大家都知道我们可以使用C语言写一段程序来控制硬件工作,但你知道其工作原理吗?网友北极c语言在实际运行中,都是以汇编指令的方式运行的,由编译器把C语言编译成汇编指令,CPU直接执行汇编指令。所以这个问题就变成,汇编指令是如何操作硬件的?如果把硬件平台限制在x86环境下,那么汇编指令操作硬件基[详细]
日常项目中碰到的内存泄露无非有以下几种:(1) 堆内存泄漏(Heap leak)。堆内存指的是程序运行中根据需要分配通过malloc,realloc new等从堆中分配的一块内存,再是完成后必须通过调用对应的 free或者delete 删掉。如果程序的设计的错误导致这部分内存没有被释放,那么此后这块内存将不会被使用,就会产生Heap[详细]
上图中,高优先级为红色线的上半部分,低优先级为红色的下半部分。其中一个中断源在上半部分和下半部分都有的,表示它既可以设为高优先级,也可以设为低优先级。如TMR0(定时器0)在上半部分和下半部分都有;而INT0(外部中断0)只在上半部分有,在下半部分没有,表示它只能设置为高优先级,不能设置为低优先级。颖[详细]
LCD的接口有多种,分类很细。主要看LCD的驱动方式和控制方式,目前手机上的彩色LCD的连接方式一般有这么几种:MCU模式,RGB模式,SPI模式,VSYNC模式,MDDI模式,DSI模式。MCU模式(也写成MPU模式的)。只有TFT模块才有RGB接口。但应用比较多的就是MUC模式和RGB模式,区别有以下几点:1.MCU接口:会解码命令,由[详细]
PIC单片机有多个中断源,16系列只有一个中断入口,18系列有两个中断入口,不同编译器下书写格式又不大一样。网上资源千篇一律,也不够系统,只是简单的罗列程序,代码生存的环境不一样也少有说明。在此做个简单的总结,因为又走了弯路...1.先说18系列(MCC18编译器下):MPLAB C18不自动把中断服务程序放在中端[详细]
简单谈谈我对uc的一些认识级对于部分源码的分析和调试,作为对近一段时间学习的阶段性总结。下文将分两部分介绍,前半部分主要谈谈我个人对一些问题的认识以及一些疑惑,后半部分是通过阅读ucosii,按照ucosii的思路自己编写或者调试的一些源码的分析,这些源码可以实现任务按照优先级定时切换(MDK+stm32[详细]
就像下面的这个表之前写过上面这个标题的一篇文章,讲的是以位移的方式去遍历表中的数据,效率非常高,但是,如果要实现一个乱序的流水灯或者跑马灯的话,思考一个这样的算法是不可取的,很费时间,也很费脑力,于是,今天就说一说查表法,如果在程序中运用查表法,不论多么复杂的程序,只要符合一张表[详细]
这次我来分享一下我的LCD1602的编程经验:先说明一下,我下面要说的LCD1602的芯片驱动是HD44780,如果你们的LCD1602驱动芯片不是HD44780,那么下面的内容是不适用的。我对LCD1602的整体理解这里说一下我对LCD1602的整体理解哈,LCD1602是一个可以显示两行字符的LCD显示器,每一行可以都写入40个字符,但是[详细]
任务管理1 OSTaskCreate()建立一个新任务。任务的建立可以在多任务环境启动之前,也可以在正在运行的任务中建立。中断处理程序中不能建立任务。一个任务可以为无限循环的结构。函数原型:INT8U OSTaskCreate(void (*task)(void *pd), void *pdata, OS_STK *ptos, INT8U prio);参数说明:task 是指向[详细]
如图,为单片机AD转换器的一种:ADC0804单片集成A/D转换器。它采用CMOS工艺20引脚集成芯片,分辩率为8位,转换时间为100µs,输入电压范围为0~5V。芯片内具有三态输出数据锁存器,可直接接在数据总线上。 各引脚名称及作用如下:VIN(+),VIN(-)——两模拟信号输入端,用以接收单[详细]
扫码关注我们
0755-82591179
邮箱:ivy@yingtexin.net
地址:深圳市龙华区民治街道民治大道973万众润丰创业园A栋2楼A09
Copyright © 2014-2025 颖特新科技有限公司 All Rights Reserved. 粤ICP备14043402号-4