AVR学习札记之跑马灯程序
来源:互联网 发布:中国的权贵阶层 知乎 编辑:程序博客网 时间:2024/04/30 16:30
用惯了51,51的I/O口控制比较容易,不需要进行大量的位位操作,而AVR因其I/O口与51相比具有强大的拉,推电流的能力,其端口操作亦较烦琐。故在程序中采用一定数量的宏定义,就会使代码编写量大大降低,下面我以一个跑马灯程序为例来介绍一下这样做的优点。
//环境:AVRSTUDIO+Winavr
//硬件:PB0、PB1、 PB2、 PB3连LED
#define F_CPU 1000000
#include <avr/io.h>
#include <avr/delay.h>
#define SET0 PORTB|=_BV(0)
#define CLR0 PORTB&=~_BV(0)
#define SET1 PORTB|=_BV(1)
#define CLR1 PORTB&=~_BV(1)
#define SET2 PORTB|=_BV(2)
#define CLR2 PORTB&=~_BV(2)
#define SET3 PORTB|=_BV(3)
#define CLR3 PORTB&=~_BV(3)
int main()
{
while(1)
{
CLR3;
SET0;
_delay_ms(500);
CLR0;
SET1;
_delay_ms(500);
CLR1;
SET2;
_delay_ms(500);
CLR2;
SET3;
_delay_ms(500);
}
}
- AVR学习札记之跑马灯程序
- AVR学习札记之工具选择篇
- AVR学习札记之工具选择篇
- AVR学习札记之工具选择篇
- AVR usart使用札记
- 读书札记:VC++学习之Windows程序运行原理
- JVM学习之札记
- arm 跑马灯程序
- AVR Studio中AVR学习之ADC转换
- STM32之GPIO及第一个STM32程序(跑马灯)
- js之跑马灯
- Java学习札记之线程
- NOSQL之Redis学习札记
- Python学习之numpy札记
- 第一个跑马灯程序
- MINI6410裸机跑马灯程序
- 微信小程序-文字跑马灯
- Apidemo学习之AnimateDrawables(跑马灯效果)
- 直接选择排序
- “反射”在C#编程中的应用
- 晚会动员会
- 追忆流年
- VC++常用快捷键
- AVR学习札记之跑马灯程序
- 程序员四大忌 你该如何避免呢?(zoubeibei)
- Google請留步
- vse使用技巧
- Regen的等价实现
- Map、Set、Iterator迭代详解与Java平台的集合框架
- 块表引用被编辑后(移动、旋转)的等价于Regen功能
- AutoCAD中的命令Explode与Arx中的函数explode()的区别
- 事件和消息的通信机制