1 / 17
文档名称:

嵌入式系统原理与设计.docx

格式:docx   大小:1,225KB   页数:17页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

嵌入式系统原理与设计.docx

上传人:long 2022/7/11 文件大小:1.20 MB

下载得到文件列表

嵌入式系统原理与设计.docx

相关文档

文档介绍

文档介绍:Revised by Chen Zhen in 2021
嵌入式系统原理与设计
嵌入式系统原理与设计
  第一章 嵌入式处理器
  1. 嵌入式系统概念,组成
  定义:以应用为主, 以计算机技术为基础, 的引脚是一个)输出引脚
  1:地址引脚
  → GPBCON —— GPH/JCON(用法一致,两位设置一个引脚)
  00:输入引脚
  01:输出引脚
  10:特殊引脚
  11:保留不用
  GPBCON 31 1 0
    ② GPxDAT 寄存器(数据寄存器)——设置引脚状态及读取引脚状态 若某一位对应的是输出引脚,写此寄存器相应位可令引脚输出高 /低电平。 若某一位对应的是输入引脚,读取此寄存器可知相应引脚电平状态。 GPBDAT
  31 1
    ③ GpxUP ——上拉电阻寄存器
    0:相应引脚使用内部上拉电阻 1:相应引脚不适用内部上拉电阻 上拉电阻:加在引脚和高电位间的电阻。 下拉电阻:加在引脚和接地间的电阻。
  上拉电阻
    Vcc (高电平) 接地端
    (S3C2410大部分配有上拉电阻,可使用,也可不使用) ① 例:使 4个 LED 小灯中的 LED1发亮
    GPBCON : 31 17 16 15 14 13 12 11 10 … 3 2 1 0
  …
  GPB8 GPB7 GPB6 GPB5
  GPB1
  GPB0
    GPBDAT : 31 8 7 6 5 … 3 2 1 0
  …
  GPB8 GPB7 GPB6 GPB5
    GPBUP : 不使用上拉电阻 程序:
  #define GPBCON(*(Volatile unsigned long *)0x56000010) #define GPBDAT(*(Volatile unsigned long *)0x56000014) #define GPB5_OUT(1<<(5*2)) #define GPB6_OUT(1<<(6*2)) #define GPB7_OUT(1<<(7*2)) #define GPB8_OUT(1<<(8*2))
  int main()
  {
  GPBCON&=~(0x0003FC00) ;
  GPBCON|=0x00015400;
  GPBDAT&=~(0x000001E0) ;
  GPBDAT|=0x000001C0;
  return 0;
  }
  ②使用按键控制 LED
  K1闭合, GPB11低电平
  K1断开, GPB11高电平
  GPGDAT11位,当 GPB11为 0时,低电平;当 GPG11为 1时,高电平。 考试肯定考的 20分编程题! ! !
  S3C2410
    #define GPBCON(*(volatile unsigned long*)0x56000010) #define GPBDAT(*(volatile unsigned long*)0x56000014) #define GPGCON(*(volatile unsigned long*)0x56000050) #define GPGDAT(*(volatile unsigned long*)0x56000054) #define GPFCON(*(volatile unsigned long*)0x56000060) #define GPFDAT(*(volatile unsigned long*)0x56000064) #define GPB5_OUT 1<<(5*2) #define GPB6_OUT 1<<(6*2) #define GPB7_OUT 1<<(7*2) #define GPB8_OUT 1<<(8*2)
  K4
  #define GPG11_IN ~(3<<(11*2))
  #define GPG3_IN ~(3<<(3*2))
  #define GPF2_IN ~(3<<(2*2))
  #define GPF0_IN ~(3<<(0*2))
  int main(){
  unsigned long dwDat;
  GPBCON&=~(0x0003FC00) ;
  GPBCON|=0x00015400;
  GPGCON&=~(0x00C000C0) ;
  GPGCON|=0x00000000;
  GPFCON&=~(0x00000033);
  GPFCON|=0x00000000;
  while(1){
  dwDat=GP