1、方案介紹:
在GD32F190的内部配有12位精度的模數轉換器,可對(duì)外部16個模拟輸入通道(dào)進(jìn)行模拟信号采集。利用該性能(néng),可以較好(hǎo)地對(duì)各種(zhǒng)模拟信号量處理。
爲了能(néng)使開(kāi)發(fā)者較好(hǎo)地掌握對(duì)A/D轉換器的使用,在推出的相關資源中,有對(duì)應的例程可參考使用。由于相關資料是介紹自家産品的,因而在應用中,開(kāi)發(fā)者還(hái)需配置第三方的器件,才能(néng)使設計的功能(néng)更加便于使用。這(zhè)裡(lǐ)就介紹一種(zhǒng)以OLED爲顯示器件對(duì)模拟信号進(jìn)行顯示輸出的方案。
在該方案中,所用的顯示屏爲雙色的0.96’OLED,其上部的1/3爲黃色,另2/3爲藍色。爲了便于功能(néng)的擴展,在程序設計過(guò)程中,保留了開(kāi)發(fā)闆所具備的虛拟串口通訊功能(néng)。這(zhè)樣(yàng)既可以通過(guò)串行通訊來同上位機構成(chéng)數據采集分析系統,也可以通過(guò)外挂相應的通信模塊來實現無線通訊或WiFi通訊,從而融入互聯網的行列中。當然,核心的功能(néng)則是射頻和串口之間的透傳。
2、方案框圖:
3、設計應用描述及心得總結:
在設計中,對(duì)顯示器件的選擇是有一定特色的,它雖與同檔次LCD5110液晶屏在功能(néng)上十分相近,但它的特色卻極爲搶眼。
首先,在外形上它更爲迷你,是穿戴設備的理想選擇對(duì)象。在工作機制上,LCD5110是依賴背光的投射來看清顯示的内容,而OLED則是靠自身的點亮來發(fā)光,在色彩方面(miàn)它也由LCD5110的單一色調,而變爲黃、藍兩(liǎng)種(zhǒng)醒目的顔色,有效地增強了表現力。
另外,在引腳使用方面(miàn)它也勝出一籌,LCD110 要占用8個引腳,而OLED則隻需4個引腳。在數據傳送方面(miàn),它是以IIC總線方式。在應用中是由PA7來連接OLED的數據信号,由PA8來連接OLED的時鍾信号。其輸出高低電平的定義語句如下:
#defineOLED_SCLK_Clr() GPIO_ResetBits(GPIOA,GPIO_PIN_8)//SCL
#defineOLED_SCLK_Set() GPIO_SetBits(GPIOA,GPIO_PIN_8)
#defineOLED_SDIN_Clr() GPIO_ResetBits(GPIOA,GPIO_PIN_7)//SDA
#defineOLED_SDIN_Set() GPIO_SetBits(GPIOA,GPIO_PIN_7)
2個引腳的配語句如下:
GPIO_InitPara GPIO_InitStructure;
RCC_AHBPeriphClock_Enable(RCC_AHBPERIPH_GPIOA,ENABLE);
GPIO_InitStructure.GPIO_Pin =GPIO_PIN_8|GPIO_PIN_7;
GPIO_InitStructure.GPIO_Mode = GPIO_MODE_OUT;
GPIO_InitStructure.GPIO_Speed =GPIO_SPEED_50MHZ;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_SetBits(GPIOA,GPIO_PIN_8|GPIO_PIN_7);
至于各功能(néng)函數直接引用OLED的例程即可,但要注意對(duì)數據類型的定義語句稍加調整,如要把u8改爲uint8_t 等。
爲了便于顯示數據及字符信息,在程序中配置了2中整體,及6*8的點陣字符和8*16的點陣字符。
const unsignedchar F6x8[][6] =
{
0x00, 0x00,0x00, 0x00, 0x00, 0x00,// sp
0x00, 0x00,0x00, 0x2f, 0x00, 0x00,// !
}
const unsignedchar F8X16[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,//sp
0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,
0x30,0x00,0x00,0x00,//!
}
此外,使用字模提取軟件PCtoLCD2002還(hái)可自行構建小字庫來顯示中文,該軟件的界面(miàn)如下圖所示:
4、作品實物圖+視頻:
實物圖如下圖所示,在OLED屏上,同時以兩(liǎng)種(zhǒng)方式來顯示采樣(yàng)值,一個以十進(jìn)制數的方式,另一個是以電壓值的方式,于此同時,通過(guò)虛拟串口在上位則可將(jiāng)接收的數據繪制成(chéng)波形圖。