头像-161107

drepa

  • 广东省广州市
  • 本科
  • 单片机 嵌入式
  • 消费电子 汽车电子

个人成就

获得 176 次赞

帮助过998人

switch case语句在循环里面的时间复杂度 DIY创客

        如题,我们都知道C有两种判断分支关键字,一种是if-else,另一种是switch-case,我这里有个程序是在for循环下面使用switch语句进行判断,同学看了我的程序之后说这个switch和for配合使用的话时间复杂度就变成n的平方了,他说换成if比较好,你们说这个说法对不对呢?应不应该把switch换成if呢?for(i=0;i<n;i++)   switch(i)   {        case 0:...break;        case 1:...break;        ...        case n:...break;    }​

串口格式化输出除了printf以外能自定义函数吗 STM32

        如题,我们知道STM32的HAL库串口发送的函数是HAL_UART_Transmit(),将这个函数封装到fputc()函数里面,就可以通过microLIB库调用printf函数进行格式化输出,但是这样的话不勾选microLIB就没法使用printf函数了(遇到printf会死机),那请问,有没有能自定义实现格式化输出的函数呢?如下:fun(char *s, ...);​

Keil中的inline函数 嵌入式

       如题,在Keil中可以使用inline关键字进行内联函数的定义,对于内联函数我有疑问:这是C99的库函数吗?在纯C环境中能不能使用?这个函数的实现原理是不是和宏定义#define差不多?​

非官方32开发板为什么不集成板载下载器 STM32

        如题,像正点原子、EU、野火那种第三方厂家的STM32板子,通常都不带有像JLINK、STLINK、ULINK那种CMSIS-DAP标准的下载调试器,但是Nucleo、Disco这些ST官方的板子基本都是带的,而GD32、NXP LPC、CYPRESS这些厂家则很多都有板载的下载器(GDLINK、OPENSDA),请问这是为什么呢?如果是想兜售自家开发的下载器,那为什么又会预留20针STLINK接口呢?还是因为版权纠纷的问题呢?还是因为STLINK没开源所以这些第三方厂家拿不到源码呢?

关于正点原子自动下载电路不太懂 STM32

如题,原子的板子有串口ISP一键下载的电路,实现原理如下:DTR电平置低(-3--12V),复位(DTR接了RST) RTS置高(+3-+12V),选择进入BootLoader(RTS接了B0) ...延时100毫秒 DTR电平变高(+3-+12V)释放复位(释放复位,但是此时B0为高,所以进入ISP模式) 开始连接...4, 接收到:1F (连接成功) 那么问题来了,请问:1.原子的FlyMCU软件是不是可以自由控制PL2303的RTS和DTR引脚?具体实现原理是什么?2.RTS和DTR都是232电平(12V),中间加的1K电阻是不是防止STM32和8050三极管被烧坏?​

运用电容的记忆效应实现1602的驱动的原理 单片机综合应用

        如题,网上有使用单片机两根GPIO驱动1602的例子,据说是利用了电容的记忆效应,可是我看得不太懂,求教一下论坛的大佬,这个电容记忆效应驱动1602的具体原理是怎么样呢?​

STM32 STLINK下载器中的RST引脚 STM32

        如题,在20脚或者10脚的STLINK下载接口中,一般都会有一个RST引脚,请问这个RST引脚是连着STM32的硬件nRST复位引脚吗?如果是这样的话,在MDK仿真之中,这个nRST复位引脚在程序下载的时候有没有被启用过呢?​

STM32的FATFS、USB例程的堆栈设置 STM32

        如题,STM32的FATFS、USB例程的堆栈设置得非常大,通常至少需要0x2000的堆,0x4000的栈,堆栈设置得这么大是给什么变量准备的呢?需要堆更多还是栈更多呢?这两种程序真的可以把如此大的堆栈耗尽吗?​