自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 嵌入式实时操作系统之上下文切换

好久没有更新博客了,今天想学习一下嵌入式实时操作系统的上下文切换,浅谈一下自己的学习成果,如果有理解不正确的,欢迎各位大神批评指正。下面就以arm-contexM4为例,来介绍一下嵌入式实时操作系统是如何进行上下文切换的。那么pendSV中断是如何触发的呢?第二种就是从一个当前线程切换到另外一个线程。

2023-05-06 10:37:39 303

原创 vxWorks下基于TTY中间件的串口驱动开发

vxworks tty第二步,实现驱动函数的挂接第三步,实现TTY中间层到驱动层接口函数的挂接此函数主要是实现接收数据后,如何把数据交给TTY中间件接口putChar,还有如何从tty中间件接口拿到需要发送的数据接口getChar第四步,实现发送函数TL16C550C_StartUp,这个函数是驱动层的数据发送函数第五步,实现配置函数TL16C550C_Ioctrl,此函数主要是设置串口波特率,模式,请缓冲

2022-06-01 09:36:35 1084

原创 vxWorks7.0下基于zynq的boot启动程序

最近工作有点忙,好久没有更新内容,前段时间抽空做了vxWorks7.0下的基于zynq的boot程序,在此做个总结。vxworks7.0支持三种不同的boot程序:第一种uboot,第二种vxworks6.9.x以上的bootloader,第三种bootapp,关于uboot的创建方法在前面的博文中已经提到过,bootloader6.9的话,因为我不在使用6.9的版本,所以在此也就不做介绍,今天我们来谈一谈vxworks7.0下bootapp的创建方法。首先,创建VSB工程,在创建VSB工程时一定要

2021-06-15 11:20:01 3192 2

原创 vxWorks7.0下基于vxBus的定时器子系统

最近研究了一下vxworks7.0下基于vxbus的定时器子系统,方便我们在需要使用定时器中断的时候引用,开发过程中的一点体会记录下来,如果由理解不对或者不全面的望批评指正,谢谢。开发平台为zynq7Z020,该处理器由三个全局的定时器,分别是globaltimer,ttc_0,ttc_1,其中全局定时器用作系统的脉搏,是整个操作系统的ticks定时器,其可通过内核配置完成,具体如下:而ttc_0会作为系统的AUX clock在初始化的时候完成匹配,系统使用SPY命令时启用定时器,所以,如果要使

2021-01-08 11:31:22 1146 1

原创 vxWorks6.6下基于vxBus的以太网驱动开发

最近更换mpc8313的phy芯片,由原来的lxt972Phy更换为DP83849I,在此记录下本人在驱动开发过程中的点滴记录,以备日后查询,基于vxbus的网络驱动,vxBus驱动的注册遵循一致的方法,驱动接口为: device_method_t dp83849PhyMethods[] = { DEVMETHOD(miiModeGet, dp83849PhyModeGet), DEVMETHOD(miiModeSet, dp83849PhyModeSet)

2020-12-23 15:57:57 1390 2

原创 AD7606的RTL模块与VIVADO行为级仿真

以前写过一个AD7606数据采集的模块,支持最大8片AD,64路的AD数据采集,今天,对这个模块进行一下仿真

2020-12-15 11:31:21 1284 1

原创 基于VxWorks7.0的S25FL256s与zynq驱动及文件系统挂接

好久没有更新博客,只因最近工作比较忙,今天抽点时间写一下在zedboard平台上挂接文件系统,块设备为S25FL256s,共计32M的flash,flash划分为两部分,0x0---0x1000000,前16M用于存储系统uboot和系统的相关参数,0x1000000---0x2000000为truetffs文件系统,其配置如下:第一步:在VIP里面增加组件DRV_QSPI_FDT_ZYNQ7K,DRV_SPI_FLASH,INCLUDE_TFFS,INCLUDE_TL_FTL,INCLU...

2020-10-20 10:19:11 2307 1

原创 DSP21062L与AD7606数据采集

最近一直在调试DSP21062L与AD7606的采样问题,先附上原理图:除了控制信号外,AD数据线接到DSP数据线低16位,采样完成后触发DSP中断读取数据,下面是DSP读取数据代码 r4=dm(MS0AD0); //IN7 m0=7; dm(m0,i0)=r4; r4=dm(MS0AD0); //IN6 m0=6; dm(m0,i0)=r4; r4=dm(MS0AD0); //IN3 m0=3; dm(m0,i0)=r4; r4=dm(MS0AD0); //IN4

2020-08-28 10:47:26 920

原创 vxworks7.0 qspi文件系统挂接问题

上一章我们谈了谈qspi驱动程序的挂接流程,下面再谈谈qspi文件系统的挂接及驱动调试,我们知道qspi驱动最终为三个函数实现:1、vxbSpiFlashRead,2、vxbSpiFlashWrite,3、vxbSpiFlashErase,分别对应flash读,写和扇区擦除命令,对于zedboard开发板而言,编写测试代码测试驱动程序,代码如下读flash测试代码:void s25Fl256sReadDataTest(int secAddr){ UINT8 cmd = SPI_RDSR_

2020-07-10 12:29:02 1000

原创 vxworks7.0 zynq qspi编程详解

zynq7000系列qspi初始化配置如下:1. Configure Clocks. Refer to section 12.4.1 Clocks.The clock enable, PLL select, and divisor setting are programmed using the Register (slcr) LQSPI_CLK_CTRLQSPI时钟一般为200000000HZ,计算分频系数,时钟源选择PLL/IO为1000000000HZ,分频系数为100000000

2020-07-01 08:53:27 1907

原创 vxWorks7 sd卡初始化及挂接流程

最近研究了一下vxWorks7.0的SD卡挂接到vxBus的详细流程,了解了一下SD2.0的协议,在此做个记录SD主控制器上电检测SD卡,并自动识别SD卡,相关流程如下:此时,识别到总线上的SD卡,系统上电时,SD卡默认的数据宽度是1位,时钟不能超过400Khz,先发送idle命令,在sd1.0协议版本用cmd0检查SD卡是否支持主控制器提供的电压,如果支持返回响应,不支持,无返回,在sd2.0协议后又专门提供了cmd8命令,检查sd卡的电压范围,所以紧跟着发送CMD检查SD卡的电压范围,下一步

2020-06-24 17:31:49 723

原创 vxworks7.0SD卡驱动流程及文件系统格式化

今天和大家谈谈vx7SD卡的vxbus挂接,及文件系统格式化流程,vx7的vxbus基于设备树,首先必须增加设备树节点,如下: sdhc0: sdhc@E0100000 { compatible = "zynq,sdhc"; reg = <0xE0100000 0x1000>; clock-frequency = <100000000>; interrupts = <56 0 4>;

2020-06-18 10:43:08 2119

原创 CAN总线 时序分析

can总线通信,在嵌入式设计中使用非常广泛,下面是本人在开发过程中对于can总线通信的一些理解,不到之处还望批评指正。CAN总线原理图如下:下面是在调试过程中示波器波形:上面的是clk,下面的rxd,下面的数据解析为:1 10111100111 11011110000110100101010101100000000can总线数据分为显性电平:0隐性电平:1从上面可以看出采...

2020-04-24 17:16:39 2915 1

原创 AD7606时序分析与verilog HDL实现

AD7606是16位,8/6/4通道同步采样模数转换芯片,各器件内置模拟输入钳位保护,二阶抗混叠滤波器,跟踪保持放大器,16位点荷再分配逐次逼近式模数转换器。其中:CONVST:启动转换信号busy:转换完成信号cs:片选信号reset:复位信号读取AD数据时序如下:AD采样流程如下:1、拉低CONVST信号启动转换2、读取busy信号,当busy信号为低时,说明转换完成,可...

2020-04-23 10:33:13 8837 18

原创 ADSP21062L调试总结

最近研究了一下ADS21062L的报告存储,发送的问题,对于本公司前辈们的程序不得不在此吐槽一下,不是因为自己的程序写的比别人好,而是以此为鉴,为了自己在以后的编程中代码编写更加规范。先看初始化代码:init_dsp0_rep: r2=0; dm(EVENT_REP_INT_NUM1)=r2;...

2020-04-15 17:27:40 255

原创 vxWorks7调试总结

vxworks7.0调试总结一直以来想看看新的vxworks7.0有什么变化,最近抽了一段时间做了一个基于zedboard的vxworks的操作系统镜像,刚开始就被很多新的问题困扰了很久,首先是uboot,vxworks7不再有bootloader,编程了全新的uboot支持,有的CPU增加了一个VXBL作为系统启动引导,但是官网推荐用U-BOOT引导启动,如何编译一个uboot,可以参考B...

2020-04-07 16:27:31 3347 1

空空如也

空空如也

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

TA关注的人

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