| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 864 人关注过本帖
标题:求教使用595芯片显示8块8*8点振的程序 谢谢大家来帮我看看 指点下
只看楼主 加入收藏
doudouiou
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2005-12-11
收藏
 问题点数:0 回复次数:2 
求教使用595芯片显示8块8*8点振的程序 谢谢大家来帮我看看 指点下

我想做一个点振的扳子,扳子是16*32的8个8*8双色点振。 需要使用16个595芯片串行发送段码,1个595芯片发送位码。
打算先发送16个段码再发一个位码00000001;然后再发送16个段码,再发送位码00000010,做循环,速度快人眼就看不出闪烁了
因为这个扳子只需要一直输出“OPEN”所以最关键还是在发送数据上。打算用同步通信,这样的话我需要自己建帧吗,还有发送端和接收端的时
钟同步怎么实现啊 请大家多多指点 如果可以的话帮我这个方案还有什么难点也给我提下啊 祝大家天天开心
我可以这样写吗:
data unsigned char Show_Segment1[]={.....};
data unsigned char Show_Segment2[]={.....};
data unsigned char Show_Segment3[]={.....};
data unsigned char Show_Segment4[]={.....};
data unsigned char digit;
void ledout(void) interrupt 4 using 1 /* 串行发送中断子程序 */
{
TI=0;
SBUF=Show_Segment[digit];
}
void main(void)
{
SCONF=...;

/* 定时器0 */
TH0 = ...;
TL0 = ...;
TCON = ...;
/* 定时器1 */
TMOD = ...;
TH1 = ...;
TL1 = ...;
TCON = ...;
/* 定时器2 */
TH2 = ...;
TL2 = ...;

T2CON = ...;
RCAP2H = ...;
RCAP2L = ...;
TR0 = ...;
TR1 = ...;
TR2 = ...;

PCON=...;
SCON = ...;
IE = ...;
IP = ...;
EA = ...;

IT0=...; /*外部中断0下降沿触发*/
IT1=...;

ET0=...;
ET1=...;
while(1){
for(digit=0;digit<=17;digit++;)
SBUF=Show_Segment1[digit];
for(digit=0;digit<=17;digit++;)
SBUF=Show_Segment2[digit];
for(digit=0;digit<=17;digit++;)
SBUF=Show_Segment3[digit];
for(digit=0;digit<=17;digit++;)
SBUF=Show_Segment4[digit];
}
}
我设了4个数组,在串行口中断中设定了SBUF的发送中断。然后在主程序中用循环将数组送到SBUF中:)

搜索更多相关主题的帖子: 芯片 
2005-12-13 22:11
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
问题问得倒是很符合标准。但是我没这个能力回答

http://kongfuziandlife. http://codeanddesign.
2005-12-13 22:16
doudouiou
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2005-12-11
收藏
得分:0 
是没有用过595芯片吗 :)  我也是第一次碰到 请大家多多指点啊 以后我会经常来的 我是个新手程序员

向上滚动的小土豆
2005-12-14 09:09
快速回复:求教使用595芯片显示8块8*8点振的程序 谢谢大家来帮我看看 指点下
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014216 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved