自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(253)
  • 资源 (17)
  • 收藏
  • 关注

原创 Linux第91步_了解“platform总线,platform驱动和platform设备”,以及驱动框架和设备框架

plattorm是为了驱动的分离与分层而提出来的一种框架,其驱动的具体实现还是需要字符设备驱动、块设备驱动或网络设备驱动。对于一个完整的驱动程序,必须提供“有设备树”和“无设备树”两种匹配方法。

2024-04-17 16:08:14 354

原创 Linux第90步_异步通知实验

“异步通知”的核心就是信号,由“驱动设备”主动报告给“应用程序”的。

2024-04-13 10:06:10 432

原创 Linux第89步_了解异步通知及其结构和函数

“异步通知”的核心就是信号。

2024-04-13 09:56:50 680

原创 Linux第88步_非阻塞IO实验

非阻塞IO是“应用程序”对“驱动设备”进行操作,若不能获取到设备资源,则非阻塞IO应用程序的线程不会被“挂起”,即线程不进入休眠,而是一直“轮询”,直到获取到设备资源为止,或者直接放弃。

2024-04-10 10:50:46 467

原创 Linux第87步_阻塞IO实验

阻塞IO是“应用程序”对“驱动设备”进行操作,若不能获取到设备资源,则阻塞IO应用程序的线程会被“挂起”,直到获取到设备资源为止。

2024-04-10 10:31:21 460

原创 Linux第86步_了解“阻塞和非阻塞IO”以及相关处理函数

了解“阻塞和非阻塞IO”以及相关处理函数。

2024-04-10 09:55:30 487

原创 Linux第85步_EXTI外部中断

linux外部中断

2024-03-28 21:46:08 959

原创 Linux第84步_了解Linux中断及其函数

了解Linux中断及其函数。

2024-03-28 21:29:46 602

原创 Linux第83步_采用“Linux内核定时器”点灯以及相关API函数

“Linux内核定时器”是采用“系统时钟”来实现的。它不是周期性运行的,一旦发生超时就会自动关闭。如果想要实现周期性定时,那么就需要在定时处理函数中重新开启定时器。

2024-03-23 17:19:23 510

原创 Linux第82步_“gpio子系统”下的使用KEY开关灯

“gpio子系统”下的使用KEY开关灯 ,进一步熟悉使用新字符设备驱动的一般模板和“gpio子系统”,以及设备树,驱动KEY和LED。

2024-03-21 21:52:06 535

原创 解决“主机不卡,但虚拟机卡顿”之办法:

解决“主机不卡,但虚拟机卡顿”之办法。

2024-03-18 15:50:27 209

原创 Linux第81步_使用“互斥体”实现“互斥访问”共享资源

互斥体应用,使用“互斥体”实现“互斥访问”共享资源。

2024-03-17 10:44:35 1035

原创 Linux第80步_使用“信号量”实现“互斥访问”共享资源

使用“信号量”实现“互斥访问”共享资源

2024-03-16 23:23:24 971

原创 Linux第79步_使用自旋锁保护某个全局变量来实现“互斥访问”共享资源

使用变量“dev_stats”来表示“共享资源的使用标志”;“dev_stats > 0”,表示共享资源已经被使用,而“dev_stats = 0”表示允许使用共享资源。因此,真正实现设备互斥访问的是变量“dev_stats”,我们用自旋锁对“dev_stats”来做保护,就可以实现“互斥访问”共享资源。

2024-03-16 19:36:09 1059

原创 Linux第78步_使用原子整型操作来实现“互斥访问”共享资源

使用原子操作来实现“互斥访问”LED灯设备,目的是每次只允许一个应用程序使用LED灯。

2024-03-16 19:29:10 709

原创 Linux第77步_处理Linux并发的相关函数

了解linux中的“原子整形数据”操作、“原子位数据”操作、自旋锁、读写锁、顺序锁、信号量和互斥体,以及相关函数。

2024-03-14 14:52:35 583

原创 Linux第76步_“gpio子系统”下的LED驱动

使用新字符设备驱动的一般模板和“gpio子系统”,以及设备树,驱动LED。gpio子系统下的点灯,才是我们要掌握的字符驱动开发方法。

2024-03-11 20:28:12 784

原创 Linux第75步_pinctrl子系统驱动和gpio子系统的常用函数

了解pinctrl子系统驱动和gpio子系统的常用函数

2024-03-11 20:19:24 508

原创 Linux第74步_“设备树”下的LED驱动

使用新字符设备驱动的一般模板,以及设备树,驱动LED。

2024-03-09 16:53:33 882

原创 Linux第73步_学习Linux设备树和“OF函数”

学习Linux设备树和“OF函数”

2024-03-08 21:35:08 838

原创 Linux第72步_使用“新字符设备的一般模板”编写LED驱动

使用“新字符设备的一般模板”编写LED驱动,使用寄存器直接开关灯。

2024-03-08 21:27:24 885

原创 Linux第71步_将linux中的多个文件编译成一个驱动模块

采用旧字符设备测试linux系统点灯,进一步熟悉其设计原理。采用多文件参与编译,深度学习编写Makefile,有利于实现驱动模块化设计。

2024-03-06 21:28:29 816

原创 Linux第70步_新字符设备驱动的一般模板

上面定义为“/home/zgq/linux/atk-mp1/linux/my_linux/linux-5.4.31”,即“指定的工作目录”上面定义为“/home/zgq/linux/atk-mp1/linux/my_linux/linux-5.4.31”,即“指定的工作目录”输出KERNELDIR的值为“/home/zgq/linux/atk-mp1/linux/linux-5.4.31”即切换到“/home/zgq/linux/atk-mp1/linux/my_linux/linux-5.4.31”。

2024-03-05 10:02:04 967

原创 Linux第69步_依据“旧字符设备的一般模板”编写LED驱动

linux点灯程序

2024-03-05 09:50:08 804

原创 Linux第68步_旧字符设备驱动的一般模板

“KERNELDIR”上面定义为“/home/zgq/linux/atk-mp1/linux/my_linux/linux-5.4.31”,即“指定的工作目录”#“KERNELDIR”上面定义为“/home/zgq/linux/atk-mp1/linux/my_linux/linux-5.4.31”,即“指定的工作目录”#“KERNELDIR”上面定义为“/home/zgq/linux/atk-mp1/linux/my_linux/linux-5.4.31”,即“指定的工作目录”

2024-03-03 12:02:18 755

原创 解决AD16导出CAD文件时出现“没有注册类” 之问题

首先找到AD16的安装路径。如:“C:\Program Files (x86)\Altium\AD16\System\Installation\”目录。然后找到“TeighaX_Setup_3.9.0”,双击安装即可。AD16导出DWG或DXF文件时,出现“没有注册类”。困扰了很久,终于解决了。

2024-03-01 10:01:24 301

原创 Linux第67步_linux字符设备驱动_注册和注销

linux字符设备驱动注册和注销

2024-02-27 10:29:12 751

原创 Linux第66步_linux字符设备驱动_挂载和卸载

linux字符设备驱动_挂载和卸载。为了测试KERNELDIR,CURRENT_PATH和MAKE的值,修改了Makefile,重点学习Makefile;KERNELDIR为“/home/zgq/linux/atk-mp1/linux/my_linux/linux-5.4.31”;CURRENT_PATH为“/home/zgq/linux/Linux Drivers/00_My_TestDriver”;MAKE的值为make

2024-02-25 20:31:16 886 3

原创 Linux第65步_学习“Makefie”

学习“Makefie”,为后期学习linux驱动开发做铺垫。

2024-02-24 22:03:47 708

原创 Linux第64步_编译移植好的虚拟机文件

这是一个非常完美的总结,只有真正参与整个系统移植,才能得到这个结论。每种开饭板的目录可能不一样,但大概流程是这样的。希望最好能参与移植,才能懂得其中的奥秘。

2024-02-23 16:21:57 672

原创 Linux第63步_为新创建的虚拟机添加必要的目录和安装支持linux系统移植的软件

在新创建的虚拟机中·,添加必要的目录和安装支持linux系统移植的软件。

2024-02-22 21:33:08 867 1

原创 Linux第62步_备份移植好的所有的文件和文件夹

学习打包虚拟机中的linux文件。

2024-02-22 21:20:13 755

原创 解决SSH远程登录开饭板出现密码错误问题

SSH远程访问开发板

2024-02-22 21:05:32 274

原创 Linux第61步_“buildroot”构建根文件系统第3步_烧写根文件系统到EMMC中_并完善开发板配置

学习Linux第61步,就是烧写根文件系统到EMMC中,并完善开发板配置,至此根文件系统学习完了,后面要学习linux驱动开发。

2024-02-18 20:55:23 852

原创 Linux第60步_“buildroot”构建根文件系统第2步_配置“buildroot下的busybox”并测试“buildroot”生成的根文件系统

学习Linux第60步,就是配置“buildroot下的busybox”,然后测试“buildroot”生成的根文件系统

2024-02-18 20:35:59 742

原创 解决STM32MP157开发板密码登录问题

配置开发板密码登录和取消开发板密码。

2024-02-17 17:54:03 420

原创 Linux第59步_“buildroot”构建根文件系统第1步_生成rootfs.tar和rootfs.ext4以及通过nfs下载测试

学习Linux第59步,就是安装“buildroot”,通过配置构建根文件系统,编译生成rootfs.tar和rootfs.ext4,以及通过nfs下载测试。

2024-02-17 17:45:52 1076

原创 Linux第58步_备份busybox生成rootfs根文件系统

备份busybox生成rootfs根文件系统

2024-02-17 09:44:05 279

原创 解决ubuntu登录密码问题

解决ubuntu登录密码问题

2024-02-17 09:18:24 610

原创 Linux第57步_“linux系统镜像”和“根文件系统”重新打包小结

学习Linux第57步,就是要做好实时总结,这是“linux系统镜像”和“根文件系统”重新打包小结

2024-02-15 12:57:59 612

使用单相电测试三相空气开关

使用单相电测试三相空气开关。

2023-10-12

普冉开发板原理图和数据手册

普冉开发板原理图和数据手册: 1、PY32F0XX_HALL驱动库和LL驱动库函数说明手册 v1.1.2 2、PY32F002AF15P电路图 3、PY32F003F18P电路图 4、PY32F003F18P数据手册 5、PY32F003F18P数据手册_EN 6、PY32F003参考手册v1.1 7、PY32F030K28T6电路图 8、PY32F003F18P时钟系统结构图

2023-08-28

GD32F103工程模板

GD32F103工程模板,这是一个完整的工程模板,可以使用。含有core_cmFunc.h和core_cmInstr.h这两个文件。

2023-08-02

WORD如何自动生成目录?

WORD如何自动生成目录。经常写说明书,不会自动生成目录,特地整理一下,防止以后忘记怎么操作了。不好意思,记性差。

2023-07-28

STM32F103之CAN通讯测试

STM32F103之CAN通讯测试分别测试CAN接收中断和非中断接收,在程序注释中,介绍了CAN的基本工作原理。 CAN总线以“帧”(Frame)的形式进行通信。 CAN总线协议规定了5种帧,分别是数据帧、远程帧、错误帧、超载帧以及帧间隔。 数据帧: 1、帧起始:占1位,显性信号,对应逻辑0; 2、仲裁段:包括标识符位(ID位)和远程发送请求位(RTR位,占1位); 标识符位:标准帧的ID位是11位,扩展帧的ID位是29位 远程发送请求位:RTR位,占1位,逻辑0表示该帧为数据帧,逻辑1表示该帧为远程帧; 在CAN协议中,ID决定报文的优先级高低,同时还决定该节点是否接收此ID的帧数据; 3、控制段 标准帧的控制段:由扩展标识符位(IDE,占1位)、保留位0(R0,占1位)、数据长度编码位(DLC,占4位)组成; 扩展帧的控制段:由两个保留位、数据长度编码位(DLC,占4位)组成; 4、数据段 数据段里是发送数据的内容,最多8个字节,长度为"数据长度编码位"。 5、循环校验段 循环校验段包括循环校验序列(CRC位,占15位)和界定符(DEL位,占1位); CRC用于校验传输是否正确;

2023-07-09

STM32F103移植uC-OSII工程模板

STM32F103移植uC-OSII工程模板,版本:V2.91 学习最好步骤: 1 、找到移植好的工程模板 2、API函数应用 3、熟悉OS配置和剪切 4、了解内部主要函数的功能

2023-06-23

STM32F103移植uC-OSIII工程模板

STM32F103移植uC_OSIII工程模板,版本: V3.03.01 学习步骤: 1 、找到移植好的工程模板 2、API函数应用 3、熟悉OS配置和剪切 4、了解内部主要函数的功能

2023-06-23

《1-uC-OSII-任务挂起-恢复-删除-例程》

1、创建任务,OSTaskCreate() 2、删除任务,OSTaskDel() 3、挂起任务,OSTaskSuspend() 4、恢复任务,OSTaskResume() 5、发送删除任务请求,OSTaskDelReq() 当OS_LOWEST_PRIO=63时,μC/OS-II有64个优先级,优先级的高低按编号从0(最高)到63(最低)排序。 #define OS_MAX_TASKS 5u /*设置"我的任务总数",uCOSii至少有两个任务,分别是"空闲任务"和"统计任务"*/ //5表示用户可以用其中的3个任务,加上"空闲任务"和"统计任务"就是5个任务;

2023-06-05

uCOSii-任务管理

主要用来测试使用uCOSii“创建任务,挂起任务,恢复任务,发送删除任务请求,删除任务”。 主要文件如下: os_cfg.h,My_Task_Priority.c,My_Task_Priority.h,Start_Task.c,Start_Task.h,main.c,LED0_Task.c,LED0_Task.h,LED1_Task.c,LED1_Task.h,Key_Task.c,Key_Task.h,LED.c,LED.h,KEY.h,USART1.c,USART1.h,delay.c,delay.h,sys.c,sys.huCOSii,主要uCOSii用户函数

2023-05-23

《PIC单片机CCS-C编译器参考手册》

《PIC单片机CCS_C编译器参考手册》适用PIC单片机在CCS编译器环境下编写C程序。适合PIC12,PIC16,PIC18等系列的CPU。 #include <18F67K22.h> //包含头文件18F67K22.h #device ADC=12,ICD=TRUE #fuses ECM_IO,PLLEN,NOIESO,MCLR,WDT1024,BORV20,VREGSLEEP,NOPROTECT,FCMEN,RTCOSC_INT,SOSC_DIG //ECM_IO: 使用外部有源晶振8MHz; //PLLEN: 使用4倍频率锁相环; //NOIESO: 双速启动不使能; //MCLR: MCLR脚使能; //WDT1024: 看门狗定时器经过1024次分频; //BORV20: 掉电复位电压2.0V //VREGSLEEP: 内部LDO在睡眠时也会工作; //NOPROTECT: 代码不保护; //FCMEN: 自动防故障装置时钟监控使能;

2023-05-02

STM8S207RB带uCOSII系统

STM8S207RB带uCOSII系统,两个LED任务,一个按键任务,一个任务栈大小检测任务,支持串口输出,时钟切换到外部高速振荡器24MHz,已经测试通过。

2023-01-29

STM8S207窗口看门狗测试程序

STM8S207窗口看门狗测试程序,已经测试,解释详细。

2023-01-25

STM8S207串口综合测试,UART1发送接收中断

STM8S207串口综合测试,UART1发送接收中断

2023-01-22

CPU复位后指定全局变量不被初始化

在KEIL中,配置全局变量在CPU复位后,无需初始化。

2022-08-22

UART_To_IAP_To_FLASHAPP

串口转IAP然后到APP,上电时,进入UART到IAP,然后判断下载程序是否合法,若合法,则执行APP。

2022-08-12

串口转IAP然后到APP

串口转IAP,然后到APP,串口发送11次TEST后,再进入IAP,如此循环往复工作。下面的程序经过实测,验证可行,目的是用来交流和学习。

2022-08-12

STM32芯片驱动AD5412或AD5416程序及其电路图

STM32芯片驱动AD5412或AD5416程序,电路图,感觉写不错。 AD5412/AD5422是低成本、精密、完全集成、12/16位数模转换器(DAC),内置可编程电流源和可编程电压输出,设计用于满足工业过程控制应用的需要。 输出电流范围可编程设置为4 mA至20 mA、0 mA至20 mA或者超量程的0 mA至24 mA。 电压输出由一个独立引脚提供,该引脚可配置成提供0 V至5 V、0 V至10 V、±5 V或±10 V输出范围;所有范围均提供10%的超量程。 电源电压范围 AVDD:10.8 V至40 V AVSS:−26.4 V至−3 V/0 V ,输出环路顺从电压:AVDD − 2.5 V

2022-07-26

使用串口4测试栈溢出,支持FreeRTOS,4个任务,1个定时器和RTC

使用串口4测试栈溢出,支持FreeRTOS,4个任务,1个定时器和RTC;结合使用串口1测试栈溢出,才可知道其中的奥妙

2022-07-15

使用串口1测试栈溢出,支持FreeRTOS,4个任务,1个定时器和RTC

使用串口1测试栈溢出,支持FreeRTOS,4个任务,1个定时器和RTC

2022-07-15

艾兰德ALD2400V变频器使用手册

艾兰德ALD2400V变频器使用手册

2022-06-13

ALPHA6000E_6000M系列说明书_A5

ALPHA6000E_6000M系列说明书_A5

2022-06-13

中国石油 XSJ 系列说明书V3.7

中国石油 XSJ 系列说明书V3.7

2022-06-09

瑞能达电气MD240油田专用变频器说明书

瑞能达电气MD240油田专用变频器说明书

2022-06-09

奇电电气QD220变频器说明书

奇电电气QD220变频器说明书

2022-06-09

汇川MD290系列通用变频器综合手册

汇川MD290系列通用变频器综合手册

2022-06-09

佰诺德BND800A系列变频器

佰诺德BND800A系列变频器

2022-06-09

浮点数转换为二进制存储V1.2.pdf

十进制浮点数转换为二进制存储的原理

2021-08-08

20_GD32F103_I2S_PCM1770.rar

使用GD32F103的SPI0和I2S1同PCM1770通讯,实现MP3功能

2021-05-26

21_GD32F103_I2C_EEPROM.rar

使用硬件I2C0读写EEPROM

2021-05-26

GD32107C_EVAL_Demo_Suites_FreeRTOS_TCPIP.rar

GD32F103和GD32F107例子工程,支持FreeRTOS和LAN接口通讯,支持USB通讯。

2021-04-28

Zigbee驱动I2C,UART和SPI

Zigbee驱动,支持ADC,I2C,UART和SPI。可读写EEPROM,PCF8563,SHT20和SD卡。

2018-06-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除