从pascal 7到delphi,我有20多年的编程经验。我想开始用C语言编程微控制器,大多数电子工具包推荐的工具是winAVR with programmers。我已经安装了软件,并想开始编译代码,但至少可以说,我迷失了方向,找不到任何简单的文档来让自己进入可以开始测试代码的轨道。有人能提供一些好的入门材料吗?
发布于 2013-04-04 11:26:28
而对于PC来说,通常的第一个程序是"Hello, World!",在嵌入式世界中(没有显示器,至少从一开始,相当于blinky led:你把一个发光二极管连接到处理器的某个输出引脚上(don't forget the current-limiting resistor!:你需要一个与发光二极管串联的电阻器),然后让发光二极管闪烁。你可以找到很多用于AVR的闪烁的LED,但我们可以在这里写一个:
// The next define tells delay.h what your CPU speed is, assuming 1Mhz
#define F_CPU 1000000UL
#include <util/delay.h>
main() {
while(1) { // loop forever
DDRB = 0xFF; // Set the direction of all pins
// on port B to OUTPUT (can change to some other port)
PORTb = 0xFF; // Set all pins on port B high (can change to some other port)
_delay_ms(1000); // Wait one second;
PORTb = 0x00; // Set all pins on port B low (can change to some other port)
_delay_ms(1000); // Wait one second;
}
}它应该在WinAVR上编译,并正确加载。将PORTB和DDRB更改为您想要的其他端口。请注意,此程序会更改该端口上的所有引脚:因此,如果您的端口B有8个引脚,则所有这些引脚都会在连接到它们的led上闪烁。别忘了限流电阻,而且LED是有方向性的:它们只在一种情况下工作,而不是在另一种情况下工作。
https://stackoverflow.com/questions/15793591
复制相似问题