|
5黑幣
51hei圖片20210306002524.jpg (908.61 KB, 下載次數: 70)
下載附件
2021-3-6 00:25 上傳
- #include "reg52.h"//此文件中定義了單片機的一些特殊功能寄存器
- #include "XPT2046.h"
- #include "lcd.h"
- typedef unsigned int u16; //對數據類型進行聲明定義
- typedef unsigned char u8;
- unsigned char PuZh[12]=" GQ: "; //第一行
- u8 disbuffgq[4]; //用來顯示數字
- unsigned char code ASCII[10]={'0','1','2','3','4','5','6','7','8','9'};
- void delayms(unsigned int ms)
- {
- unsigned char i=100,j;
- for(;ms;ms--)
- {
- while(--i)
- {
- j=10;
- while(--j);
- }
- }
- }
- void datapros()
- {
- u16 temp; //temp就是讀取到的光敏電阻數據值
- static u8 i;
- if(i==50) //意思是每隔一段時間讀取一次
- {
- i=0;
- temp = Read_AD_Data(0xA4); // AIN2 光敏電阻 讀取光敏電阻的模擬信號轉換成數字信號
- }
- i++;
- disbuffgq[0]=ASCII[temp/1000]; //千位
- disbuffgq[1]=ASCII[temp%1000/100]; //百位
- disbuffgq[2]=ASCII[temp%1000%100/10]; //十位
- disbuffgq[3]=ASCII[temp%1000%100%10]; //個位
-
- DisplayOneChar(7,0,ASCII[disbuffgq[0]]);
- DisplayOneChar(8,0,ASCII[disbuffgq[1]]);
- DisplayOneChar(9,0,ASCII[disbuffgq[2]]);
- DisplayOneChar(10,0,ASCII[disbuffgq[3]]);
-
-
- }
- void main(void)
- {
- LcdInit();
- LcdShowStr(0,0,PuZh);
- while(1)
- {
-
- datapros(); //數據處理函數
- delayms(80);
- }
- }
復制代碼 就是想用lcd顯示光敏的值,結果卻顯示圖片的情況望解答
|
最佳答案
查看完整內容
disbuffgq[0]=ASCII[temp/1000]; //千位
disbuffgq[1]=ASCII[temp%1000/100]; //百位
disbuffgq[2]=ASCII[temp%1000%100/10]; //十位
disbuffgq[3]=ASCII[temp%1000%100%10]; //個位
// 上面代碼已經把數據分解并轉換為ASCII碼保存在disbuffgq[ ]中
// 下面直接直接顯示disbuffgq[ ]中ASCII碼即可,若再次轉換即出錯
DisplayOneChar( 7,0,disbuffgq[0]);
DisplayOneChar( 8,0,disbuffgq[1]);
...
|