打印
[技术问答]

菜鸟初学M058S之数据结构

[复制链接]
楼主: niuyaliang
手机看帖
扫描二维码
随时随地手机跟帖
21
niuyaliang|  楼主 | 2013-11-27 21:54 | 只看该作者 |只看大图 回帖奖励 |倒序浏览
__IO uint32_t  DOUT;
IO配置为输出时,配置输出的状态,输出高电平或者低电平

使用特权

评论回复
22
万法归宗| | 2013-11-27 21:55 | 只看该作者
niuyaliang 发表于 2013-11-27 21:52
设置IO为数字功能还是模拟功能

这句话是怎么看出来是io功能的,中文资料里的么,还是。。。

使用特权

评论回复
23
万法归宗| | 2013-11-27 21:56 | 只看该作者
niuyaliang 发表于 2013-11-27 21:54
IO配置为输出时,配置输出的状态,输出高电平或者低电平

还有这句话,只看代码配合数据手册也看不出这条语句的功能吧

使用特权

评论回复
24
niuyaliang|  楼主 | 2013-11-27 21:56 | 只看该作者
万法归宗 发表于 2013-11-27 21:54
产品识别码怎么读出来呢?

该位为只读位,直接读取即可呀

使用特权

评论回复
25
niuyaliang|  楼主 | 2013-11-27 21:58 | 只看该作者
万法归宗 发表于 2013-11-27 21:55
这句话是怎么看出来是io功能的,中文资料里的么,还是。。。

使用特权

评论回复
26
niuyaliang|  楼主 | 2013-11-27 21:59 | 只看该作者
万法归宗 发表于 2013-11-27 21:56
还有这句话,只看代码配合数据手册也看不出这条语句的功能吧

技术参考手册里面有详细说明,对寄存器的说明

使用特权

评论回复
27
niuyaliang|  楼主 | 2013-11-27 22:02 | 只看该作者
__IO uint32_t  DMASK;
当该位为1时,相应的DOUT被写保护,应该是防止干扰,怕误操作的

使用特权

评论回复
28
万法归宗| | 2013-11-27 22:11 | 只看该作者
明白了,明白楼主的意思了

使用特权

评论回复
29
niuyaliang|  楼主 | 2013-11-27 22:17 | 只看该作者
__IO uint32_t  PIN;
该位为只读位,可以读取IO的状态,为高电平还是低电平

使用特权

评论回复
30
niuyaliang|  楼主 | 2013-11-27 22:19 | 只看该作者
__IO uint32_t  DBEN;
使能或者禁止IO的去抖动功能

使用特权

评论回复
31
niuyaliang|  楼主 | 2013-11-27 22:21 | 只看该作者
__IO uint32_t  IMD; 
设置IO的中断方式,边沿还是电平中断,前提是需要使能中断

使用特权

评论回复
32
niuyaliang|  楼主 | 2013-11-27 22:25 | 只看该作者
__IO uint32_t  IEN;
使能或者禁止IO的具体的中断模式,应该还有个寄存器可以可以开启IO的中断

使用特权

评论回复
33
niuyaliang|  楼主 | 2013-11-27 22:27 | 只看该作者
__IO uint32_t  ISRC;
可以读取IO是否在中断状态,写1可以清除IO的中断标志

使用特权

评论回复
34
niuyaliang|  楼主 | 2013-11-27 22:31 | 只看该作者
02001 typedef struct                                  
02002 {                                               
02038     __IO uint32_t  DBNCECON;                    
02039 } GPIO_DBNCECON_T;
这个是外部中断去抖动的控制寄存器,设置去抖动的采样周期和时钟源

使用特权

评论回复
35
niuyaliang|  楼主 | 2013-11-27 22:35 | 只看该作者
04319 typedef struct
04320 {
04374     __IO uint32_t PWRCON;
04375
04387     __IO uint32_t AHBCLK;
04388
04448     __IO uint32_t APBCLK;
04449
04474     __IO uint32_t CLKSTATUS;
04475
04506     __IO uint32_t CLKSEL0;
04507
04561     __IO uint32_t CLKSEL1;
04562
04577     __IO uint32_t CLKDIV;
04578
04601     __IO uint32_t CLKSEL2;
04602
04627     __IO uint32_t PLLCON;
04628
04645     __IO uint32_t FRQDIV;
04646
04647 } SYSCLK_T;
这个是系统时钟配置的结构体定义

使用特权

评论回复
36
niuyaliang|  楼主 | 2013-11-27 22:40 | 只看该作者
__IO uint32_t PWRCON;
系统掉电控制寄存器,是受保护滴,写的时候需要解锁

使用特权

评论回复
37
niuyaliang|  楼主 | 2013-11-27 22:42 | 只看该作者
系统掉电控制寄存器的寄存器位,待板子回来后看看,是否可以位寻址,或者是还必须自己定义呢

使用特权

评论回复
38
niuyaliang|  楼主 | 2013-11-27 22:47 | 只看该作者
__IO uint32_t AHBCLK;
用来使能或者控制ISP时钟

使用特权

评论回复
39
niuyaliang|  楼主 | 2013-11-27 22:48 | 只看该作者
__IO uint32_t APBCLK;
用来使能或者禁止APB时钟

使用特权

评论回复
40
niuyaliang|  楼主 | 2013-11-27 22:49 | 只看该作者
APB时钟的包括范围

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则