登录
SPI接口实险,LED数据管显示
电子工程师
2010-06-30
1365
分享海报
控制/MCU
1888
人已加入
+加入圈子
描述
SPI接口实险,LED数据管显示。
1、程序通过SPI接口输出数据到HC595芯片驱动LED数据管简单显示。
2、内部1 M晶振,程序采用单任务方式,软件延时。
3、进行此实验请插上JP1的所有8个短路块,JP6(SPI_EN)短路块。
*/
#include "iom16v.h"
unsigned char disp[] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
/*延时函数*/
void delay_ms(unsigned char i) {
unsigned char a, b;
for (a = 1; a < i; a++) {
for (b = 1; b; b++) {
;
}
}
}
/*SPI接口初始化*/
void SPI_MasterInit(void) {
DDRB |= (1<
SPCR = (1<
| (1<
}
/*SPI数据发送*/
void SPI_MasterTransmit(unsigned char i) {
SPDR = i; /* 启动数据传输 */
while (!(SPSR & (1<
;
}
}
/*595数据输出*/
void SPI_595_Out(unsigned char i) {
PORTB &= ~(1 << 4); /*准备锁存*/
SPI_MasterTransmit(i);
PORTB |= (1 << 4); /*锁存数据*/
}
void main(void) {
unsigned char i = 0;
DDRA = 0x00; /*方向输入*/
PORTA = 0xFF; /*打开上拉*/
DDRB = 0xFF; /*方向输出*/
PORTB = 0xF0; /*电平设置*/
DDRC = 0x00;
PORTC = 0xFF;
DDRD = 0xFF;
PORTD = 0xFF;
SPI_MasterInit();
while (1) {
i ++;
if (i > 9) {
i = 0;
}
delay_ms(250);
delay_ms(250);
SPI_595_Out(disp[i]);
}
}
打开APP阅读更多精彩内容
点击阅读全文
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
相关推荐
led
SPI接口
如何利用
SPI
接口实
现对74HC595的操作
2021-11-24
0
利用
SPI
接口实
现对74HC595的操作
2021-11-24
0
怎样使用STM32F103的
SPI
或IIC
接口实
现
显示
功能呢
2022-01-21
0
基于Proteus的Arm处理器的
SPI
接口实
现
2009-12-07
1532
LED
显示
接口
电路
2012-05-17
1687
基于FPGA的VGA
接口实
现和字符
显示
2015-10-29
1089
单片机的键盘及
LED
数码
管
显示
接口
2016-03-25
760
SPI
总线
接口实
现
数据
传输的实现方法
2017-11-16
818
基于
SPI
/IIC
接口
的OLED
数据
显示
2021-11-26
609
SPI
与I2C
接口
下的OLED
显示
2021-12-03
1351
基于
SPI
接口
的OLED
数据
显示
2021-12-22
491
基于
SPI
协议
接口
的OLED
数据
显示
2021-12-22
970
led
数码
管
显示
器静态
显示
接口
是什么样的
2024-08-28
736
全部
0
条评论
快来发表一下你的评论吧 !
发送
登录/注册
×
20
完善资料,
赚取积分