OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 向各位大哥请教几个基础问题!

共1条 1/1 1 跳转至

向各位大哥请教几个基础问题!

菜鸟
2005-09-10 01:04:00    评分
/*********************************************************** *文件名:BEEPCON.c *功能:蜂鸣器控制。对蜂鸣器 B1 进行控制,采用软件延时方法, 使用 I/O 口直接控制,采用灌电流方式 / ************************************************************ /************************************************************** #include "config.h" #define BEEPCON 0x00000080 /*P0.7 引脚控制 B1,底电平蜂鸣*/ //*************************************************************** void delay() //延时 { int i,j; for (i=0;i<10000;i++) { for (j=0;j<25;j++) { } } } int Main(void) //控制蜂鸣器蜂鸣 { PINSEL0= 0x00000000; //设置引脚连接 GPIO IOODIR = BEEPCON; //设置 I/O 为输出 while(1) { IOOSET = BEEPCON; //BEEPCON=1 delay(); IOOCLR = BEEPCON //BEEPCON=0 } return(0); } *********************************************************************************** 上面的一段程序是 周立功 《 ARM 嵌入式系统实验教程 (一)》抄下来的一段程序 有几个问题向各位大侠请教: 问题1: #define BEEPCON 0x00000080 /*P0.7 引脚控制 B1,底电平蜂鸣*/ 是不是表示 BEEPCON 的物理地址为0x00000080 啊? 它后面的解释 /*P0.7 引脚控制 B1,底电平蜂鸣*/ 那就是说明 #define BEEPCON 0x00000080 只是给 P0.7 取了个别名 BEEPCON 各位大哥,是不是这样啊? 如果真的是这样的话,为什么不直接 对 P0.7 进行操作呢? 问题2: PINSEL0= 0x00000000; //设置引脚连接 GPIO PINSEL0 没有定义为什么这里能用呢?PINSEL0 是不是寄存器啊? 为什么 PINSEL0= 0x00000000 就解释为:设置引脚连接 GPIO ? 问题3: 为什么 IOODIR = BEEPCON; 解释为:设置 I/O 为输出 ? 问题4: while(1) { IOOSET = BEEPCON; //BEEPCON=1 delay(); IOOCLR = BEEPCON //BEEPCON=0 } 这段程序是什么意思? IOOSET 和 IOOCLR 分别是什么东西啊? 谢谢!



关键词: 各位     大哥     请教     几个     基础     问题    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]