导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→学习ARM的问题16[求助]

* 82749: 学习ARM的问题16[求助]

   wangxd5429 
wangxd5429发表的帖子 

 学习ARM的问题16[求助]
技术类问题
1. 在做周立功的基础试验的时候,发现程序开头的文件说明与MAIN函数前面的函数注释有时相同,有时不同,大家怎么看?我认为应该相同,放在开头是为了阅读方便。
ARM嵌入式系统试验教程(一)P127
例子如下:
程序开头的注释:
/****************************************************************************
* 文件名:DATARET.C
* 功能:使用串口UART0接收上位机发送的数据,当接收到8个连续数据后,将接收计数值加一后输
*      出LED1--LED8显示,并将数据原封不动地发送回上位机。
* 说明:将跳线器JP8短接。
*      通讯波特率115200,8位数据位,1位停止位,无奇偶校验。
****************************************************************************/
 main函数之前的注释:
/****************************************************************************
* 名称:main()
* 功能:初始化串口,并等待接收到串口数据。
* 说明:在STARTUP.S文件中使能IRQ中断(清零CPSR中的I位)。
****************************************************************************/

2. 函数的使用方法与函数的功能有区别吗?我认为“使用方法”更直观一些,指的是应该怎样操作。“功能”指的是函数的输入输出描述。

3. 下面是周立功的基础试验程序中的一个函数,返回时无法停止在下一条语句,请问为什么? 
/******************************************************************************
*名称:uart0_ini()
*功能:通过设置相应的寄存器对串口0进行初始化
*入口参数:波特率,串口模式设置
*出口参数:初始化成功返回1,初始化失败返回0
*占用资源:变量bak,baud,set
*说明:输入串口模式的信息以及串口波特率,观察返回值
************************************************************************/
uint8 uart0_ini(uint32 baud,UARTMODE set)
{
 uint16 bak;
 
 if((baud==0||baud>  115200))               /*参数过滤*/
 {
  return(0);
 }
 if((set.datab  <5||set.datab>  8))
 {
  return(0);
 }
 if((set.stopb==0||set.stopb>  2))
 {
  return(0);
 }
 if(set.parity>  4)
 {
  return(0);
 }

 U0LCR=0x80;                   /*设置串口波特率*/
 bak=(Fpclk>  >  4)/baud;
 U0DLM=bak>  >  8;
 U0DLL=bak&0xff;

 bak=set.datab-5;                 /*设置串口模式*/
 if(set.stopb==2)
 {
  bak|=0x04;
 }
 if(set.parity!=0)
 {
  set.parity--;
  bak|=0x08;
 }
 bak|=set.parity  <  <4;

 U0LCR=bak;
 U0FCR=0x81;
 U0IER=0x01;
return(1);
}

4. 学习中遇到这样一句话:“为了允许用户模式程序使用IMB序列,推荐将其作为一个操作系统调用程序,由SWI指令调用。”其中“作为一个操作系统调用程序,由SWI指令调用。”这句话怎么理解?我的理解是“写成一个函数,由软件中断调用。” 《ARM与嵌入式系统基础教程》P57

5. “软件的逻辑关系”是什么意思?是流程图的复杂程度吗?  《ARM与嵌入式系统基础教程》P390

非技术类问题
1. 本人9月份要进入嵌入式LINUX的学习,大家能给推荐几本书吗?以通俗易懂为标准,适合于初学者,我已经学了UCOS-II,没有分析源码,也算有些基础吧。谢谢!!

2. 本人已经基本学完了基于ARM核的单片机LPC2210,在操作系统上想从UCOS-II过渡到LINUX,请教大家学完LINUX大概需要多长时间(不包括分析源码)?

3.我读程序的方法是读完一句就在旁边写上注解,读完一个函数后写出它的思路。请大家谈谈各自的方法吧,互相学习。谢谢!!


发表时间:2005年8月25日19:22:56

  
回复该帖

本主题共有 2 帖,分页:>>>>>该主题的所有内容[2]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  82764.[详细]去www.seventeach.com/bbs上问吧
摘要:......(无内容)
- [浅浅][1023次] 2005年8月26日

[上一篇帖子]:[求助]我哪位高手知道从哪里下载Multisim8?音频功效在10瓦的芯片有哪些?谢谢啦!
[下一篇帖子]:快来帮帮忙呀,超急啊