久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
為什么定義了一個結構體過后1602上面就有一個亂碼
[打印本頁]
作者:
a512520a
時間:
2017-4-10 19:02
標題:
為什么定義了一個結構體過后1602上面就有一個亂碼
[attach]56365[/attach]2
6.8后面的亂碼和字符都是定義了一個結構體過后才有的 ,之前都沒有。
#include <reg52.h>
#include<stdlib.h>
#include<intrins.h>
extern bit Start18B20();
extern bit Get18B20Temp(int *temp);
extern void InitLcd1602();
extern void LcdShowStr(unsigned char *str);
extern void LcdSetCursor(unsigned char addr);
extern void LcdWriteDat(unsigned char dat);
extern void LcdWriteCmd(unsigned char del);
extern void keyscan();
extern unsigned char key,flag1;
unsigned char a[7];
/**************************************************************
就是這個結構體
*****/
struct _pid{
float SV;//用戶設定溫度
float PV; //測量溫度
float KP; //比例常數
float T; //PID計算周期--采樣周期
float TI; //積分常數
float TD; //微分常數
float EK; //本次偏差
float EK_1;//上次偏差
float SEK; //歷史偏差之和
float IOUT;//積分輸出
float POUT; //比例輸出
float DOUT;//微分輸出
float OUT0; //0值輸出
float OUT; //pid輸出
unsigned int C10ms;//判斷是否滿足PID計算時間
unsigned int pwmcycle;//pwm周期
}PID;
void main()
{
unsigned char i,e=0;
unsigned char IntToString(unsigned char *str, int dat);
unsigned char m;
unsigned char code table[]={'0','1','2','3','4','5','6','7','8','9', '.','-',':',' ','=','.'};
bit res;
int temp; //讀取到的當前溫度值
int intT, decT; //溫度值的整數和小數部分
unsigned char len;
unsigned char str[5];
unsigned char stt[16] = {"T1:"};
unsigned char sty[16] = {"T2:"};
EA = 1; //開總中斷
Start18B20(); //啟動DS18B20
InitLcd1602(); //初始化液晶
LcdWriteCmd(0x0C); //關閉光標閃爍
/*實時溫度*/
while(1)
{
/*顯示實時溫度標識"T1:"*/
LcdSetCursor(0x00);
m = 0;
while(stt[m] != '\0')
{
LcdWriteDat(stt[m]);
m++;
}
/*顯示設定溫度標識"T2:"*/
LcdSetCursor(0x40);
m = 0;
while(sty[m] != '\0')
{
LcdWriteDat(sty[m]);
m++;
}
res = Get18B20Temp(&temp); //讀取當前溫度
if (res) //讀取成功時,刷新當前溫度顯示
{
intT = temp >> 4; //分離出溫度值整數部分
decT = temp & 0xF; //分離出溫度值小數部分
len = IntToString(str, intT); //整數部分轉換為字符串
str[len++] = '.'; //添加小數點
decT = (decT*10) / 16; //二進制的小數部分轉換為1位十進制位
str[len++] = decT + '0'; //十進制小數位再轉換為ASCII字符
LcdShowStr(str); //顯示到液晶屏上
Start18B20();
/*設定溫度*/
keyscan();
if(flag1==1)
{
if(key<11) //10以下是數字顯示部分
{
LcdSetCursor(0x43+e++) ;
LcdWriteDat(table[key]);
a
=table[key];
i++;
}
else if(key==11)
{
LcdWriteCmd(0x01) ; //刪除設定值
e=0;
for(i=0;i<7;i++)
{
a
='0';
}
}
flag1=0; //鍵盤檢測標志置0進行下一次檢測
}
}
}
}
/* 整型數轉換為字符串,str-字符串指針,dat-待轉換數,返回值-字符串長度 */
unsigned char IntToString(unsigned char *str, int dat)
{
signed char i = 0;
unsigned char len = 0;
unsigned char buf[6];
if (dat < 0) //如果為負數,首先取絕對值,并在指針上添加負號
{
dat = -dat;
*str++ = '-';
len++;
}
do
{ //先轉換為低位在前的十進制數組
buf[i++] = dat % 10;
dat /= 10;
} while (dat > 0);
len += i; //i最后的值就是有效字符的個數
while (i-- > 0) //將數組值轉換為ASCII碼反向拷貝到接收指針上
{
*str++ = buf
+ '0';
}
*str = '\0'; //添加字符串結束符
return len; //返回字符串長度
}
作者:
a512520a
時間:
2017-4-10 19:09
本帖最后由 a512520a 于 2017-4-10 19:13 編輯
[attach]56366[/attach]
作者:
a512520a
時間:
2017-4-10 19:10
[attach]56367[/attach]就這個
作者:
a512520a
時間:
2017-4-10 19:12
就這個
作者:
a512520a
時間:
2017-4-10 19:13
本帖最后由 a512520a 于 2017-4-10 19:15 編輯
IMG20170410185219.jpg
(3.8 MB, 下載次數: 90)
下載附件
2017-4-10 19:15 上傳
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
欧美亚洲视频
|
亚洲一区二区三区在线播放
|
最新中文字幕第一页视频
|
亚洲精品在线免费播放
|
国产精品一区二区欧美黑人喷潮水
|
成人免费一区二区三区视频网站
|
中文字幕日韩欧美一区二区三区
|
午夜精品一区二区三区免费视频
|
欧美在线一区二区三区
|
成人久久18免费网站图片
|
日韩中文字幕免费在线
|
一区二区三区免费
|
精品成人
|
国产精品久久久久久久免费大片
|
夜夜爽99久久国产综合精品女不卡
|
综合色站导航
|
国产成人精品一区二区三区视频
|
四虎海外
|
嫩呦国产一区二区三区av
|
国产激情一区二区三区
|
国内自拍偷拍一区
|
亚洲精品久久久久中文字幕二区
|
中文字幕日韩av
|
久久九精品
|
亚洲综合一区二区三区
|
日韩高清电影
|
一级毛片视频
|
午夜影视在线观看
|
久久亚洲一区
|
久久亚洲精品久久国产一区二区
|
91精品久久久
|
91玖玖
|
日韩视频中文字幕
|
国产91成人
|
国产精品久久久久久久免费观看
|
色婷综合网
|
欧美亚洲国产一区二区三区
|
中文在线播放
|
欧美区在线
|
中文字幕电影在线观看
|
黄色毛片在线播放
|