1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
u8 LCD_buff[8];
u8 scan_index; /****************** LCD段码扫描函数 ***************************/ u8 code T_COM[4]={0x08,0x04,0x02,0x01}; void LCD_scan(void) //5us @22.1184MHZ { u8 j; j = scan_index >> 1; P2n_pure_input(0x0f); //全部COM输出高阻, COM为中点电压 if(scan_index & 1) //反相扫描 { P1 = ~LCD_buff[j]; // P2 = ~(LCD_buff[j|4] & 0xf0); } else //正相扫描 { P1 = LCD_buff[j]; P2 = LCD_buff[j|4] & 0xf0; } P2n_push_pull(T_COM[j]); //某个COM设置为推挽输出 if(++scan_index >= 8) scan_index = 0; } /* MCU PIN P17 P16 P15 P14 P13 P12 P11 P10 P27 P26 P25 P24 P23 P22 P21 P20 LCD PIN 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 -- 1D 2: 2D 2. 3D 4: 4D 4. 5D 5. 6D COM3 1E 1C 2E 2C 3E 3C 4E 4C 5E 5C 6E 6C COM2 1G 1B 2G 2B 3G 3B 4G 4B 5G 5B 6G 6B COM1 1F 1A 2F 2A 3F 3A 4F 4A 5F 5A 6F 6A COM0 B7 B6 B5 B4 B3 B2 B1 B0 buff[0]: -- 1D 2: 2D 2. 3D 4: 4D buff[1]: 1E 1C 2E 2C 3E 3C 4E 4C buff[2]: 1G 1B 2G 2B 3G 3B 4G 4B buff[3]: 1F 1A 2F 2A 3F 3A 4F 4A buff[4]: 4. 5D 5. 6D -- -- -- -- buff[5]: 5E 5C 6E 6C -- -- -- -- buff[6]: 5G 5B 6G 6B -- -- -- -- buff[7]: 5F 5A 6F 6A -- -- -- -- */ 以上是段码液晶的段码扫描函数部分,我想问的是LCD_buff这个数组如何在扫描后变成buff[0~7]这几个数组并能分别控制各个段码的,有点想不明白 |
|
相关推荐
2个回答
|
|
LCD_buff应该是有初始化的,每次从LCD_buff[j]取值赋予P1口,LCD_buff[j|4]取值赋予P2口(低四位清0)
最佳答案
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
503 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1756 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
1183 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
1053 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1287 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12022 浏览 31 评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 18:55 , Processed in 0.700305 second(s), Total 74, Slave 58 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号