📄 main.c
字号:
/****************************************************************************************/
/* SPI测试程序(基于74HC595) */
/* */
/* 程序设计:sdfdlut */
/* 2008年10月20日 */
/* 本程序已在mega128exb实验开发板上测试成功,使用时请将与SPI有关的短路片短路。 */
/****************************************************************************************/
/* 程序现象: */
/* 数码管循环显示0~9的数字和A~E的字母。 */
/****************************************************************************************/
/* 时钟采用7.3728MHz外部晶振,请在Makefile中指定。 */
/****************************************************************************************/
#include <avr/io.h>
#include <avr/delay.h>
#include <avr/signal.h>
#include <avr/interrupt.h>
#include "SPI.h"
unsigned char seg[16]={0b11000000,0b11111001,0b10100100,0b10110000,0b10011001,0b10010010,0b10000010,0b111111000,0b10000000,
0b10010000,0b10001000,0b10000011,0b11000110,0b10100001,0b10000110,0b10001110};//数字的字模
//数码管段位排列为:上a,右上b,中间g
/*-----------------------------------------------------------------------
HC595_Show: 用74HC595显示数字
输入参数: ch: 要显示的数字
返回值: 无
-----------------------------------------------------------------------*/
void HC595_Show(unsigned char ch)
{
unsigned char rdata;
if (ch<0x10)
rdata = SPI_Byte(seg[ch]);
}
int main()
{
unsigned char i,j;
SPI_Init();
while(1)
{
for (i=0;i<0x10;i++)
{
HC595_Show(i);
for (j=0;j<10;j++)
{
_delay_ms(50000);
}
}
}
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -