-
航顺HK32F030M使用ADC切换通道时自动停止采集
使用航顺HK32的ADC进行两路数据交替采集,切换通道时,会将两个通道全部打开。在切换通道前将通道选择寄存器复位后再进行切换,则会出现ADC挂掉的情况。请路过的大神指点迷津![img]https://bbs.21ic.com/static/image/smiley/comcom/9.gif[/img]
1367浏览量 5回复量 关注量 -
CW32 的高级时钟如何同时独立控制6路的占空比 sos
刚接触这个芯片,这一个问题搞了两天的,真的不友好,连个寄存器手册也没!!!!CW32 的高级时钟如何同时控制6路pwm,并且能够独立控制6路的占空比?
932浏览量 0回复量 关注量 -
如何读取TIMERx的计数值 sos
在STM32 F系列芯片中测试GPIO输出速度还行轻松达到10MHz以上,我的问题是:如果用外部信号触发时钟time用内部系统时钟计数测试的数值在time里,如何读出? 用CubeMX常见的工程,遍历与时钟相关的函数没有找到读取值得方法。 知情者请告知,先谢谢了。
2177浏览量 0回复量 关注量 -
关于Cortex-M4内核的中断入栈过程以及栈帧的问题 sos
在看Cortex-M3和Cortex-M4内核权威指南这本书的时候,发现了“栈帧”这个概念。我从书上理解的是:中断来临后会将内部寄存器以及内部特殊寄存器进行入栈,入栈的寄存器是固定的那几个,反正就是八个字大小(包含浮点寄存器的情况是26个字),但是我在一个stm32f407的带定时器中断的简单例程进debug看了下汇编代码。发现了不管是子函数调用还是跳转到中断服务函数,入栈保存的数据根本就不是权威指南说的8个字或者26个字,而是只入栈要跳转的函数中会被改变的内部寄存器,所以就又不懂“栈帧”了。难道是这里说的“栈帧”仅仅是为了服务RTOS等嵌入式操作系统定义的么?为了能更方便的从栈中提取到自己想要的内部寄存器的值,利用栈帧规定好每个位置保存的是哪个寄存器的值?也就是说自己写的裸机程序编译器只会把需要保存的寄存器保存,不会改变的寄存器直接不保存? 不知道我说的清不清楚,希望懂得老哥们能给小弟答疑解惑!先谢为敬[img]https://bbs.21ic.com/static/image/smiley/comcom/4.gif[/img]
1295浏览量 0回复量 关注量 -
中颖单片机SH79F6441 T3定时器重载疑问?
本人首次使用中颖单片机SH79F6441,对它的T3定时器重载,有如下疑惑: 在首次对T3定时器的16位计数器/定时器寄存器(TH3,TL3)置成都置成0(TH3=0x00, TL3=0x00) 后,启动运行一段时间后,读TH3、TL3,如果这个时候读到的值为TH3=0xef, TL3=0x56, 那么当T3定时器在溢出重载时,加载到计数器中的是0X0000,还是0xef56?
1078浏览量 1回复量 关注量 -
GD32E230的定时器读出值和CNT寄存器不一致 sos
如题,用的是TIMER2的输入捕获,能进中断,但是用timer_counter_read(TIMER2);函数读出的值与仿真中CNT中的值差别非常大IO的初始代码 /*config input capture io alternate */ gpio_mode_set(GPIOB, GPIO_MODE_AF, GPIO_PUPD_PULLUP, GPIO_PIN_0|GPIO_PIN_1); gpio_af_set(GPIOB,GPIO_AF_1,GPIO_PIN_0); gpio_af_set(GPIOB,GPIO_AF_4,GPIO_PIN_1); TIMER2初始化代码 void timer2_inital(void) { timer_parameter_struct timer_parameter; timer_ic_parameter_struct timer_ic_parameter; rcu_periph_clock_enable(RCU_TIMER2); timer_parameter.alignedmode = TIMER_COUNTER_EDGE; timer_parameter.clockdivision = TIMER_CKDIV_DIV1; timer_parameter.counterdirection = TIMER_COUNTER_UP; timer_parameter.period = 0xffff; timer_parameter.prescaler = 24; timer_parameter.repetitioncounter =0; timer_init(TIMER2,&timer_parameter); timer_ic_parameter.icfilter =0; timer_ic_parameter.icpolarity = TIMER_IC_POLARITY_RISING; timer_ic_parameter.icprescaler = TIMER_IC_SELECTION_DIRECTTI; timer_ic_parameter.icselection = TIMER_IC_PSC_DIV1; timer_input_capture_config(TIMER2,TIMER_CH_2,&timer_ic_parameter); /* enable and set TIMER2 interrupt */ nvic_irq_enable(TIMER2_IRQn, 1U); timer_auto_reload_shadow_enable(TIMER2); timer_interrupt_enable(TIMER2,TIMER_INT_CH2); timer_enable(TIMER2); } 请大侠们诊断下,问题出在什么地方
3044浏览量 0回复量 关注量 -
STM8L单片机用IAR查看SPI1的DR寄存器值为什么不显示
无论=data中data是多少,查看SPI1数据寄存器值显示都是----,既不是0也不是1,而其他寄存器都显示正常。将SPI1->DR赋值给一个temp后,watch里面查看temp=0x00;
4320浏览量 1回复量 关注量 -
CC2640的I2C问题?
我用CC2640的I2C操作寄存器读写值,示波器抓不到要写值的波形(可以抓到从机地址和寄存器地址),但是值可以写进去。这是什么原因呢,困扰了我好久了。求大神解答~I2C传输就用的官方的I2C_transfer函数
10295浏览量 1回复量 关注量 -
新手不会调试IIC
我是一个新手,我IIC程序都编译成功了,DSView捕获波形的时候SDA没有波形,应该是没有往里面写入寄存器地址和数据,如果往地址0x02写入0xaa,不知道怎么往里写入.[img][/img]
1636浏览量 13回复量 关注量