久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 基于單片機的溫控智能風扇的問題,小白提問希望解答 [打印本頁]

作者: lx843040583    時間: 2017-5-7 18:55
標題: 基于單片機的溫控智能風扇的問題,小白提問希望解答
#include <reg52.h>                 //調用單片機頭文件
#define uchar unsigned char        //無符號字符型 宏定義  變量范圍0~255
#define uint  unsigned int         //無符號整型 宏定義    變量范圍0~65535
#include <intrins.h>
#define RdCommand 0x01 //定義ISP的操作命令
#define PrgCommand 0x02
#define EraseCommand 0x03  
#define Error 1
#define Ok 0
#define WaitTime 0x01 //定義CPU的等待時間
sfr ISP_DATA=0xe2;    //Flash數據寄存器地址(E2h)
sfr ISP_ADDRH=0xe3;   //Flash高字節寄存器地址(E3h)
sfr ISP_ADDRL=0xe4;   //Flash低字節寄存器地址(E4h)
sfr ISP_CMD=0xe5;     //Flash命令模式寄存器地址(E5h)
sfr ISP_TRIG=0xe6;    //Flash命令觸發寄存器地址(E6h)
sfr ISP_CONTR=0xe7;   //ISP/IAP控制寄存器地址(E2h)
sbit dula=P2^6;//U1鎖存器的鎖存端  000001111111 顯示函數11111100000
sbit wela=P2^7;//申明U2鎖存器的鎖存
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};                                          
uchar num;//定時器要用到
void ISP_IAP_enable(void);        //打開ISP,IAP功能
void ISP_IAP_disable(void);       //關閉ISP,IAP功能
void ISPgoon(void);               //公用的觸發代碼
uchar byte_read(unsigned int byte_addr);//字節讀
void SectorErase(unsigned int sector_addr);//扇區擦除
void byte_write(unsigned int byte_addr, unsigned char original_data);//字節寫
void display(); //000033333 顯示函數3333300000

//數碼管段選定義            
uchar code smg_du[]={0x28,0xee,0x32,0xa2,0xe4,0xa1,0x21,0xea,0x20,0xa0,
                                           0x60,0x25,0x39,0x26,0x31,0x71,0xff};         //斷碼
//數碼管位選定義
uchar code smg_we[] = {0xef,0xdf,0xbf,0x7f};
uchar dis_smg[8] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8};        
uchar smg_i = 3;    //顯示數碼管的個位數
sbit dq   = P2^4;   //18b20 IO口的定義
sbit pwm = P2^3;    //蜂鳴器IO口定義


其中,
//數碼管段選定義            
uchar code smg_du[]={0x28,0xee,0x32,0xa2,0xe4,0xa1,0x21,0xea,0x20,0xa0,
                                           0x60,0x25,0x39,0x26,0x31,0x71,0xff};         //斷碼

是什么意思啊? 0X28顯示的并不是0吧? 這段話是什么意思呢?斷碼是什么?




作者: xcoter    時間: 2017-5-7 19:27
斷碼,通過控制數碼管上對應燈管亮滅來達到顯示出需要的顯示內容
作者: 維超    時間: 2017-5-7 19:46
1:“斷碼”應是“段碼”的筆誤.
2:0X28就是這里的硬件條件下的“0”的編碼。看圖



作者: lx843040583    時間: 2017-5-7 21:02
維超 發表于 2017-5-7 19:46
1:“斷碼”應是“段碼”的筆誤.
2:0X28就是這里的硬件條件下的“0”的編碼。看圖

uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

那這個代碼是什么意思啊
作者: ahshmj    時間: 2017-5-7 21:22
是“段碼”。即便是錯別字也應該知道。
作者: lx843040583    時間: 2017-5-7 21:27
ahshmj 發表于 2017-5-7 21:22
是“段碼”。即便是錯別字也應該知道。

uchar code smg_du[]={0x28,0xee,0x32,0xa2,0xe4,0xa1,0x21,0xea,0x20,0xa0,
                                           0x60,0x25,0x39,0x26,0x31,0x71,0xff};  
0X28按照樓上那位的圖顯示,是如何顯示出0的呢? 求解答阿大神
作者: ahshmj    時間: 2017-5-8 08:47
有些led數碼管的管腳排列不一樣(不過很少),也有些是線路板設計時,各字段對應的IO沒按順序排(處于商業原因,故意打亂)。

你可以根據你自己的硬件,看看適應那種編碼。如果是常見的LED和按順序排列的段輸出,就可以用常見的段編碼,不過,共陽極和共陰極也是有區別的。
作者: 維超    時間: 2017-5-8 10:27
lx843040583 發表于 2017-5-7 21:27
uchar code smg_du[]={0x28,0xee,0x32,0xa2,0xe4,0xa1,0x21,0xea,0x20,0xa0,
                          ...

作為共陽正向數碼管,要顯示“0”,就是位碼高電平。段碼中的A,B,C,D,E, F要低電平。而原作者的段碼從高到低的排列是E,D,DP,C,G,A,F,B。相應端置低電平就是0。連起來是“00101000”.再轉換成16進制就是0X28了。




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 一区二区三区高清在线观看 | 正在播放国产精品 | 午夜丰满少妇一级毛片 | av天天澡天天爽天天av | 九九亚洲| 麻豆视频国产在线观看 | 操久久 | 国产一区二区三区四区三区四 | 精品久久伊人 | 国产精品成人一区二区三区夜夜夜 | 欧美偷偷操 | 午夜爽爽爽男女免费观看 | 可以在线观看av的网站 | 久久99久久 | 中文字幕欧美日韩 | 综合色久 | 久久久精品一区二区三区 | 亚洲欧美综合精品久久成人 | 亚洲一区二区免费 | 久久99精品久久久久久青青日本 | 中文在线一区二区 | 欧美日韩精品 | 亚洲狠狠爱 | 亚洲一区二区久久 | 亚洲狠狠丁香婷婷综合久久久 | 91色视频在线观看 | av国产精品毛片一区二区小说 | 国产毛片av| 久久久久久久一区 | 国产一区二区三区久久久久久久久 | 亚洲精品99 | 亚洲国产精品视频一区 | 亚洲精品在线看 | 99国产精品久久久 | 91精品国产一区二区 | www.v888av.com| 欧美亚洲视频 | 91国语清晰打电话对白 | www.日本在线 | 超碰在线国产 | 91在线精品一区二区 |