单片机/MCUwilliam hill官网
直播中

elecfans小能手

4年用户 1715经验值
擅长:电源/新能源 测量仪表 存储技术
私信 关注
[问答]

【高手问答】从事单片机软硬件开发15年的工程师们,与您探讨单片机软硬件设计

`
编者导读:本期我们邀请了单片机/MCU 版主@张飞电子学院蔡琰 @张飞电子学院张角 @张飞电子学院黄忠,来解答大家在单片/MCU设计上遇到的问题。

高手简介:

黄忠社区之星.jpg
黄忠:张飞实战电子FOC和硬件课程讲师,有多年软硬件设计和产品研发经验,擅长原理图、PCB-Layout设计。对电机驱动器的软硬件设计有深刻的理解。著有《无人机遥控器课程 》、《90天线上硬件课程部分视频》、《FOC线上课程部分视频》等作品。同大家一起交流学习单片机产品设计、研究电机驱动控制。

张角社区之星.jpg
张角:张飞实战电子鸿蒙系统、嵌入式实时操作系统以及Risc-V单片机课程主讲老师。专注单片机程序开发、鸿蒙系统驱动及应用开发,以及Linux系统驱动及应用开发工作。同时对硬件威廉希尔官方网站 设计、buck电源设计以及电机驱动设计有着丰富的行业经验。

蔡琰社区之星.jpg
蔡琰:张飞实战电子单片机课程讲师,专注单片机产品研发15年+。对单片机底层结构和编程语言有深入的理解。对单片机通信模块的产品应用开发有大量的研发经验。热爱单片机教学工作,讲课细致入微,通俗易懂。
从事MCU单片机方案的开发多年,包括51核ARM核,各种应用:
1、物联网通信系统;
2、BMS管理
3、回收机项目;
4、无人机项目;
5、国内领先的RISC-V架构单片机的鸿蒙项目设计;
6、远程抄表系统;

如何提问:在帖子下方回复你想要问的问题,逻辑清晰,也可以附带图片或附件,并@张飞电子学院蔡琰 @张飞电子学院张角 @张飞电子学院黄忠



`

回帖(12)

松山归人

2021-3-2 17:35:14
欢迎三位资深的单片机工程师,大家有问题可以积极提问啊!
1 举报

李桂兰

2021-3-2 17:38:13
老师们好,想请教一下以下问题:
CCS8.2生成HEX文件时勾选了image mode 报错:-image requires ROMS directive null,有两个问题:
1.如何在CCS8.2中加入ROMS {org = 0x30000,len = 0x7e00}
2.我使用HEX2000 分别用image 模式和非image模式,两种方式生成的HEX文件的数据区内容不一样,按道理有没有image模式,生成的HEX文件中的数据区内容应该是一样的,什么原因?
2 举报
  • 黄忠: 1.在帮助手册中搜索Select image mode 对应11.9.1章节,Generating a Memory Image 有关于这个模式的描述,在使用这个模式的时候一定要使用ROMS指令,来指定内存范围。所以这个一定要配合具体的程序来实现。
  • 黄忠: image 模式和 非image 模式内存空间的连续性是不一样的,所以生成的HEX内容应该也是不一样的。

刘秀英

2021-3-2 17:47:23
各位老师好,我做了一个设计(数字电压表),程序编译后无错误无警告。但是液晶显示的实际结果会出现一些错误。请问您可以帮我看一下是哪儿错了吗?
不好的实际结果是:1.电压会出现乱码;2.开机显示信息后,有时会无电压显示;3.mV量程的超限指示和报警功能没有实现。
您看得出问题在哪儿吗?


1 举报
  • 黄忠: 你的问题很普遍的复杂,因为导致问题的原因可能有很多,既可能是硬件原因,也可能是软件原因,还有可能是系统不稳定造成的,不是几句话可以说得清楚的,你可以把板子和功能说明书一起寄给我,我们一起找问题。

陈丽

2021-3-2 17:56:17
PIC18F87J11想要实现ECCP1输出PWM,ECCP2输入捕获要如何实现?
最好是ECCP1和ECCP2时基共用一个定时器3或者共用定时器4 ,我在手册上没有找到这一块的时钟源应该如何配置,目前我程序的现状是如果同时开了PWM和捕捉,PWM无输出,只有捕捉能正常捕捉。如果单独只开一个PWM或者捕捉是正常的。
请老师帮忙看一下是什么原因














1 举报
  • 黄忠: 前面图中18.1.4中明确说明,ECCP模块在选择捕获和PWM功能这两种情况下,是不能共用同一个定时器作为时钟的,如果你希望这两个功能的输入时间相同,你可以选择两个不同的定时器作为时钟,并将这两个定时器的时钟设为一致相同即可。

yuer_ge

2021-3-3 10:52:04
在 demo 板上采样电压时,不稳定,采样结果有波动,如何消除?
1 举报
  • 张飞实战电子蔡琰: ①一般来说,仿真器都是工作在一个稳压的环境(通常为 5V)。如果用仿真
    器的 A/D 时,要注意其 A/D 参考电压是由仿真器内部给出,还是需要外部提供。
    ②A/D 转换需要一个连续的时钟周期,所以在仿真时不能用单步调试的方法,否
    则会造成 A/D 采样值不准。
    ③至于 A/D 采样不稳定,可以在 A/D 输入口加一电容,起到滤波作用;在软件
    处理时采用中值滤波的方法。

镜中仙

2021-3-3 10:54:45
在车载 DVD 系统中,如何设计电子防震系统?
1 举报
  • 张飞实战电子蔡琰: 在车载 DVD 系统,最好选择高档 DVD 机,因为高档 DVD 机都采用电子防
    震系统(ADVANCEDESP),当记忆缓冲区内的读数降低,先进的电子防震设计会
    以双速读数系统,做出比正常速度快两倍的读数速率,以减低噪声,即使连续震
    荡仍可避免跳线情况出现,现在就说说什幺叫电子防震。简单地说:电子防震就
    是一个信号的储存--释放过程,首先 CD 要先把信号进行提前读取,也就是我们
    见到机子的加速,再把信号储存在 RAM 中,而我们在开防震的时候所听到的就
    是经过 RAM 的声音,这样就是它的过程。当没有防震时是由于信号是 1 比 1 读
    取的,所以当受到冲击后,就会出现跳音。而当开了防震时,机子受到冲击后,
    由 RAM 释放出来的声音使音乐不停地播放,而与此同时,光头迅速进行复位检
    索,当检索到信号后立即补充,所以不会出现跳音。大概的情况就是这样。但是
    这样还没有满足用家的要求,由于这种的方法带来的时间短,通常只有 3 秒,所
    以跳音的机会还是蛮高,如果增大 RAM 又带来造价的增高因为 RAM 这东西价
    格较贵,尤其是质量好的。

王斌

2021-3-4 14:15:40
老师您好,本人在用STM32F103学习串口通信过程中,发现其用到了NVIC,而我在51单片机是没有遇到的。想了解一下,如果不加NVIC会有什么具体的影响?以及NVIC对串口通信有什么具体的意义呢?串口通信是否一定需要NVIC?
1 举报
  • 黄忠: NVIC是单片机内部的中断管理系统,也就是说这个串口通信中使用的是中断的方式,有可能是发送中断,也有可能是接收中断,当然串口通信并不一定要使用中断。只要能实现你想要的功能,方法不局限。

王萍

2021-3-4 14:20:17
请问一下各位老师,关于SD卡 SPI模式写入单个block 卡返回数据响应成功错误的问题
我采用SPI模式下500KHZ,卡是HC卡8GB,读取block,擦除block都没问题,写入单个block时,CMD24指令响应成功,主机接着发送512byte,但是卡没有返回0x05成功响应,返回一些奇怪的数值,如图,请问这个是怎么回事呢,谢谢啦










1 举报
  • 黄忠: 你好,可以检查写多个数据时,数据时序是否正确,写时间是否溢出,另外再关注一下SPI的时钟相位,时钟极性,以及时钟高地电平时间是否和SD卡时序要求相符合。

杨帆

2021-3-9 15:41:21
老师好,我在使用STM32F429的过程中有偶发性的出现这样的问题,就是在重启的时候会死机,无论是按RESET按键,还是程序软重启或者是断电重启都会出现这个问题,不是每次必现,偶尔会出现,出现之后必须重新烧写程序才会回复正常,不太清楚死机是因为程序没启动还是因为程序跑飞了。我的BOOT0和BOOT1都是0.广大网友有没有遇到过这种问题,能有什么解决方法呢?
1 举报
  • 黄忠: 这个有可能是硬件问题,也有可能是软件问题,你需要检查你的硬件以及软件,从两方面下手去检查。可以在一块没有问题的硬件平台上测试程序,使用排除法,排除问题。

王杰

2021-3-9 15:43:40
三位老师好,我是一个单片机新手, 请教关于STM32F407使用过程中遇到的一个问题。

STM32F407通过USB HS 加外置PHY为USB3300,往U盘中写数据,直接上电运行没法向U盘内写数据,硬件仿真(keil mdk)环境下,发现是Appli_state没法进入到APPLICAtiON_READY(用cube mx生成的程序,用过的应该都知道)只能到state。之后偶尔有一次,硬件仿真环境下手动单步执行了几次while(1)循环,然后点了全速运行,竟然能进到ready了!!!求问怎么回事?

5.png
1 举报
  • 黄忠: 你好,你上述提到了Appli_state无法进入,那么就需要继续找为什么无法进入,是哪一部分的执行结果影响到这个状态了,一级一级往前溯源,这样就可以找到问题的根源了。

哈哈

2021-3-18 01:06:47
老师好,我想问下AVR的单片机,MCU下载了bootloader后,一是怎么样通过编写一个C程序后通过串口去下载程序?二是有什么方便的工具可以给我有bootloader的avr芯片下载程序。其中第一个网上怎么都搜不到例子。
1 举报
  • 黄忠: 你好,跟你说一个思路,第一个程序通过串口接收第二个程序的数据,可以边接收边存储,等到全部接收完之后,跳到第二个程序代码开头的地方执行。通信协议可以自定义

嚜軒公告

2022-1-5 10:33:03
老师好,我学习网口驱动,stm32f429,驱动网口需要移植lwip,但是连接单片机配置啥,然后给到lwip连接口又配置啥东西逻辑不是很清晰,应该先配置啥东西然后在配置啥呢
举报

更多回帖

发帖
×
20
完善资料,
赚取积分