TA的每日心情 | 开心 2015-1-1 01:21 |
---|
签到天数: 354 天 连续签到: 1 天 [LV.8]以坛为家I
|
本帖最后由 shamowangzi 于 2013-10-22 17:44 编辑
有几天没有更新了,赶快还有一个多星期的时间好好玩一下!机会难得呀!
前面写了两个使用的感觉,大致对256RFR2 Xplained Pro的硬件和软件环境有一个了解了!没事的时候把Atmel studio里面的例程跑了一遍,发现这块小块还挺好玩的!
刚好晚上没事做下来又好好玩一下!
这次从自己新建一个新的工程开始,
在空白工程里(其实atmel studio已经把基本工程的目录和代码结构已添加好了,只要在需要的地方添加代码就好了!)(Atmel Studio真是个好东西呀)
使用file-->New-->Project新建一个Project,可以看到可供选的很多,摸索了一下,建的时候参考下面的图吧。不知道为什么这样选,就是这样选,哈哈
填写完工程名字和存储位置后一个有基本的代码架构的工程就出来了!
先看下下呢!里面有几个部分值得注意的!
要建立一个自己的工程,不可能全部东西都自己写吧,现在不是很流行库吗,
随便打开一个例程看一下:
哈哈,玩过Cortex M3,特别是STM32的兄弟要笑了!
把需要的东西拷到自己新建的目录下,添加到工程里,开始写点东西试一下!
啊啊,这几天事情太多了!本来想着用mega256RFR点亮COG呢,还好有时间,慢慢弄,先贴个使用中控制GPIO的例子!实现USER LED闪烁
/* Use static volatile to make it available in debug watch */
static volatile ioport_port_mask_t port_val;
sysclk_init();
board_init();
ioport_init();
delay_init(sysclk_get_cpu_hz());
/* Set output direction on the given LED IOPORTs */
ioport_set_port_dir(EXAMPLE_LED_PORT, EXAMPLE_LED_MASK,
IOPORT_DIR_OUTPUT);
/* Set direction and pullup on the given button IOPORT */
ioport_set_port_dir(EXAMPLE_BUTTON_PORT, EXAMPLE_BUTTON_MASK,
IOPORT_DIR_INPUT);
ioport_set_port_mode(EXAMPLE_BUTTON_PORT, EXAMPLE_BUTTON_MASK,
IOPORT_MODE_PULLUP);
/* Set LED IOPORTs high */
ioport_set_port_level(EXAMPLE_LED_PORT, EXAMPLE_LED_MASK,
IOPORT_PIN_LEVEL_HIGH);
while (true) {
/* Toggle LED IOPORTs with half a second interval */
ioport_toggle_port_level(EXAMPLE_LED_PORT, EXAMPLE_LED_MASK);
delay_ms(500);
/* Get value from button port */
/* Use watch with debugger to see it */
port_val = ioport_get_port_level(EXAMPLE_BUTTON_PORT,EXAMPLE_BUTTON_MASK);
}
|
|