MAX7219驱动8位数码管
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include
#include
#define uchar unsigned char
#define uint unsigned int
sbit sbDIN=P2^0;
sbit sbLOAD=P2^1;
sbit sbCLK=P2^2;
uchar disp_buffer[8]={2,0,1,2,1,1,2,4}; void delayms(uint ms)
{ uint i,j;
for(i=0;i { for(j=0;j<123;j++); } } void write(uchar addr,uchar dat) { uchar i; sbLOAD=0; for(i=0;i<8;i++) { sbCLK=0; addr<<=1; sbDIN=CY; sbCLK=1; _nop_(); _nop_(); sbCLK=0; } for(i=0;i<8;i++) { sbCLK=0; dat<<=1; sbDIN=CY; sbCLK=1; _nop_(); _nop_(); sbCLK=0; } sbLOAD=1; } void initialise() { write(0x09,0xff); write(0x0a,0x07); write(0x0b,0x07); write(0x0c,0x01); } void main() { uchar i; initialise(); delayms(10); for(i=0;i<8;i++) { write(i+1,disp_buffer[i]); } while(1) { } }