接触freeRTOS没多长时间,决定重0开始 移植 freeRTOS到 老项目中。其实本来项目也没多复杂, 希望项目源码简介些, 有条理些, 正好不太忙,于是参考原子例程移植。       首先去freeRTOS官网 下载 源码下载工具 FreeRTOSv10.2.1.exe。下载后运行, 选择好目录就可            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-06 23:18:00
                            
                                75阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            TWRP recovery 的强大功能使它成为刷机界的第一选择,常见品牌机型一般都有官方适配的 twrp,有些没有官方适配 twrp 的机型也有开发者制作了非官方版本。然而开发者不是万能的,还是有很多机型没有人做适配。对于这种情况,你是坐等大神,还是自己动手丰衣足食?当然是自己动手。事实上,适配 twrp 并不如想像的那么难。理论上说,适配工作就是准备必要的安卓源码和运行编译命令。下面,笔者将根据            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-06 19:14:37
                            
                                479阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            到这里,代码部分就修改完毕了,还需要修改该的就是Autotools的宏和链接脚本。     为了宏生成速度快,我把其他所有无关的BSP全部删除了。  Autotools宏的修改相对比较简单,文件位置参考以上的连载,有贴出具体目录下的文件。  这里首先修改:  c/src/lib/libbsp/arm/acinclude.am  这个文件修简单,相当于case语句一样,增加一个case语句            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-28 00:38:00
                            
                                333阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            09年我接触到 RTEMS,然后开始学习RTEMS,自己先后将 RTEMS移植到 AT91SAM9260的单板上,然后又移植到 Marvell 的 88F6281 的单板上。通过这两个移植,大量的阅读RTEMS 的手册,算是入了点门。于是乎,把 AT91SAM9260 的RTEMS 4.9.4  BSP 撰写的整个过程与调试过程与大家分享。开发 BSP的过程大致如下:1.选择BSP模板,            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-22 22:30:00
                            
                                665阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            内核编译成功后,下一步我们就开始弄Hello World,完成这个工作,首先我们去官方网站下载测试程序包。  http://www.rtems.org/ftp/pub/rtems/4.9.4/class-examples-4.9.4.tar.bz2     解压缩,以后我们进入 class-examples-4.9.4 的文件夹。  输入以下命令     cd hello_wo            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-28 08:55:00
                            
                                944阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            到上一连载为止,RTEMS 4.9.4的相关代码部分的修改就算结束了。  有些细心的朋友会注意到,第三个连载中列出了所有的文件,我们一些文件并没有修改;还有一些文件AT91RM9200中是没有的。如  c/src/lib/libcpu/arm/at91sam9260/memcpy/memcpy.S,这个文件是我找来的一个ARM下memcpy的优化版本,效率应该高于普通的memcpy。库里本来就有m            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-25 10:34:00
                            
                                533阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            遵循我们上次的步骤,  1.将c/src/lib/libbsp/arm/csb337复制为 c/src/lib/libbsp/arm/at9260;  at9260  │  aclocal.m4  │  bsp_specs  │  ChangeLog  │  configure  │  configure.ac  │  Makefile.am  │  Makefile.in  │  preinst            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-24 22:01:00
                            
                                755阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            中断驱动AT91rm9200和AT9260差别不大,主要要修改的地方是个别的中断向量号,另外就是最大中断向量号。  我所作的修改:  c/src/lib/libcpu/arm/at91sam9260/irq/irq.h  删除了相关的9200的定义,定义了AT9260中断的最大数量。  /*   * Interrupt handler Header file   *   *	Bacon Xu               
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-24 22:30:00
                            
                                914阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            杂项函数在 BSP 中也是非常重要的。我为了图省事,全部都放置在了:c/src/lib/libcpu/arm/at91sam9260/pmc/pmc.c中。  主要是获取CPU当前的频率和系统主时钟的频率。  前几篇连载中,我们在串口和时钟驱动里都是用了获取主时钟频率的函数。     另外一个就是 udelay 函数。udelay函数原来是posix的标准函数,但是rtems并没有实现,            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-24 23:17:00
                            
                                340阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # 科普文章:.NET 移植 Mono
## 引言
在软件开发领域,.NET 框架是一种广泛使用的框架,它提供了丰富的工具和库,方便开发人员构建跨平台的应用程序。然而,.NET 框架最初只能在 Windows 平台上运行,这限制了它的应用范围。为了解决这个问题,Mono 项目应运而生,它是一个开源的.NET 框架的实现,可以在多个操作系统上运行。
本文将介绍什么是 Mono,以及如何使用 M            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-08-29 14:26:06
                            
                                160阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Project Nano-RTEMS for ARMV7M 我的想法如下:1、为 ARMV7M 平台提供一个可靠的RTOS 平台,RTEMS本身就是这么一个可靠的硬实时系统,而Cortex-M3,M4有着越来越强的处理能力,可扩展NAND和SDRAM,非常适合跑这类本身就是比较完善的系统。2、提供一个相对精简的核心,只耗 20KROM 和 10K RAM,取代 ucos 或者freeRT            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-17 10:00:49
                            
                                74阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            其实到这里,只要能保证编译通过,再修改一下链接脚本,其实已经可以跑在at9260的系统上了。因为我没有仿真器,不知道程序的状态,所以必须撰写调试串口的驱动。  RTEMS 的调试串口并没有采用中断输出的方式,而是采用查询输出的方式。相对来说比较容易。  RTEMS里有两个打印函数:     printf 和 printk     printf是由库支持的打印函数,内部比较复杂,            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-24 22:58:00
                            
                                718阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            为什么需要操作系统?     1.计算机是由CPU、内存、磁盘、显卡、声卡等许许多多设备组成的,而且这些设备的厂商众多,品种繁多,而且不同厂商生产的同种设备虽然完成同种功能,但是具体细节却存在千差万别;    2.为了正确地管理和使用这些设备来实现具体的应用,这样程序员就得了解和掌握各种设备的工作原理。而且对于同种设备,由于不同的硬件厂商在实现细节上的差异使得程序员再次陷入了复杂的硬件控            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-18 11:49:00
                            
                                680阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            [root@centos7 hello_world_c]# qemu-system-aarch64 -no-reboot -serial null -serial mon:stdio -net none -nographic -M xilinx-zynq-a9 -m 256M -kernel o-o ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-12 15:13:00
                            
                                1093阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            [root@centos7 hello_world_c]# aarch64-rtems6-gdb o-optimize/hello.exe GNU gdb (GDB) 10.1.90.20210409-git Copyright (C) 2021 Free Software Foundation,  ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-13 12:14:00
                            
                                305阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            参考文献:
【1】邱玮,熊谱翔,朱天龙. 嵌入式实时操作系统:RT-Thread设计与实现[M]. 北京:机械工业出版社,2019.RT-thread线程的概念是操作系统中最小的调度单位,线程调度算法是基于优先级的全抢占式多线程调度算法,即在系统中除了中断处理函数、调度器上锁部分的代码和禁止中断的代码不可抢占外,系统的其他部分都可以抢占,包括线程调度器自身。支持256个优先级。rt中并不存在运行状            
                
         
            
            
            
            (本文原创,转载请注明出处,谢谢)     这两天抽了个空,在rickleaf移植的 qemu mini2440 的rtems 4.9.5 bsp 上做了一些修改:  1.原来mini2440的 bsp是基于 gp32的bsp修改,复用了部分的gp32代码。cpu类型实际上使用的是s3c2410。这不利于对mini2440的修改。所以,增加了新cpu型号s3c2440,并将mini244            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2011-03-22 23:33:00
                            
                                810阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            遵循我们上次的步骤,  1.将c/src/lib/libbsp/arm/csb337复制为 c/src/lib/libbsp/arm/at9260;  2.将c/src/lib/libcpu/arm/at91rm9200复制为c/src/lib/libcpu/arm/at91sam9260;     打开 c/src/libbsp/arm/at9260/start/start.S,修改如            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-12-22 22:44:00
                            
                                364阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            [原]  [url]http://qgjie456.blog.163.com/blog/static/35451367200832910564665/blog/getBlog.do?bid=fks_084071081083087069084082082095087083085070085085080068[/url]export MIBDIRS=/share/snmp/mibs/expo            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2009-04-16 10:05:35
                            
                                3185阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、修改项目1.右键编辑项目.csproj文件,删除文件全部内容类库项目粘贴以下配置:<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netcoreapp3.0</TargetFramework>
  </PropertyGroup><            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-13 23:45:19
                            
                                129阅读