采用STC8G1K08A芯片,高性价比芯片,芯片的资源包括8K Flash、256+1K RAM、I2C、SPI、ADC等,外围简单,采用内部晶振,控制16X16的WS2812芯LED点阵屏只需最小硬件系统,且整个软件框架清晰明了,值得下载参考学习。
2024-01-29 09:05:30 7.2MB 驱动开发
1
1、从一开始就保证了代码的质量。鼓励开发人员仅编写能通过测试从而满足需求的代码。一个方法的代码越少,从逻辑上来说,其中包含错误的几率就越小。 2、无论是有意设计的还是巧合,大多数TDD 开发人员编写的代码都遵循SOLID 原则。SOLID 原则是一组帮助开发人员确保编写出高质量软件的编程实践。由TDD实践生成的这些测试是极为宝贵的,而那些作为副作用得到的高质量也是TDD 难以置信的重要好处。 3、确保了代码与业务需求之间的高度一致性。如果需求是以测试方式给出,而且通过了所有测试,就可以很自信地说代码满足了业务需要。 4、鼓励创建更简单、针对性更强的库和API。TDD 对开发过程的改变很大,这是因为那些为库或API 编写接口的开发人员就是这个接口的第一用户。这就提供了有关如何编写该接口的新视角,而且马上就能知道这个接口是否有意义。 5、鼓励与企业沟通。要创建这些测试,需要多与业务用户交流。这样,就可以确保输入与输出的组合有意义,还可以帮助用户理解所开发的产品。 6、有助于从系统中清除那些没有用到的代码。大多数开发人员在编写应用程序时,设计界面和编写方法都是以可能发现的情况为基础的。这样就会导致系统中存在大量永远不会用到的代码或功能。这种代码的成本非常高,编写它们需要花费精力,即使这些代码什么也不做,也依然必须对其进行维护。它还使事情变得混乱,分散开发人员本应专注于重要工作代码的注意力。TDD 有助于从系统中清除这种寄生代码。 7、提供了内置的回归测试。在对系统和代码进行修改时,总会创建一套测试,用来确保将来的更改不会损害现在的功能。 8、终止了递归错误的出现。可能遇到过这种情景:正在开发一个系统时,相同的错误总是一次又一次重复出现。您可能觉得终于抓住并终止了这个错误,但在两个星期之后发现它又回来了。而利用TDD 方法,只要报告了一个缺陷,就会编写一个新的测试来揭露它。如果通过了这个测试而且一直能通过,说明已经真正消除了这一缺陷。 9、如果开发应用程序时能够时刻记着可测试性,所得到的结果就是一种开放的、可扩展的、灵活的体系结构。对于TDD 和松散耦合体系结构,依赖注入都是关键组件。这样所得到的系统,因为其体系结构而变得可靠、易于修改,并能对抗缺陷。
2024-01-18 10:42:45 3.5MB 测试驱动
1
1, linux驱动一般分为3大类: * 字符设备* 块设备* 网络设备 2, 开发环境构建: * 交叉工具链构建* NFS和tftp服务器安装 3, 驱动开发中设计到的硬件: * 数字电路知识* ARM硬件知识* 熟练使用万用表和示波器* 看懂芯片手册和原理图 4, linux内核源代码目录结构: * arch/: arch子目录包括了所有和体系结构相关的核心代码。它的每一个子目录都代表一种支持的体系结构,例如i386就是关于intel cpu及与之相兼容体系结构的子目录。 * block/: 部分块设备驱动程序; * crypto: 常用加密和散列算法(如AES、SHA等),还有一些压缩和CRC校验算法; * documentation/: 文档目录,没有内核代码,只是一套有用的文档;* drivers/: 放置系统所有的设备驱动程序;每种驱动程序又各占用一个子目录:如,/block 下为块设备驱动程序,比如ide(ide.c)。如果你希望查看所有可能包含文件系统的设备是如何初始化的,你可以看 drivers/block/genhd.c中的device_se
2024-01-17 17:10:37 131KB Linux 驱动开发 基础总结
1
宋宝华_精通LINUX设备驱动开发,绝对实用的好书
2023-12-28 11:23:01 10.75MB LINUX 设备驱动开发
1
Prentice.Essential Linux Device Drivers.2008 一个老外写的,写的非常详细 Chapter 1. Introduction Evolution The GNU Copyleft Kernel.org Mailing Lists and Forums Linux Distributions Looking at the Sources Building the Kernel Loadable Modules Before Starting Chapter 2. A Peek Inside the Kernel Booting Up Kernel Mode and User Mode Process Context and Interrupt Context Kernel Timers Concurrency in the Kernel Process Filesystem Allocating Memory Looking at the Sources Chapter 3. Kernel Facilities Kernel Threads Helper Interfaces Looking at the Sources Chapter 4. Laying the Groundwork Introducing Devices and Drivers Interrupt Handling The Linux Device Model Memory Barriers Power Management Looking at the Sources Chapter 5. Character Drivers Char Driver Basics Device Example: System CMOS Sensing Data Availability Talking to the Parallel Port RTC Subsystem Pseudo Char Drivers Misc Drivers Character Caveats Looking at the Sources Chapter 6. Serial Drivers Layered Architecture UART Drivers TTY Drivers Line Disciplines Looking at the Sources Chapter 7. Input Drivers Input Event Drivers Input Device Drivers Debugging Looking at the Sources Chapter 8. The Inter-Integrated Circuit Protocol What's I2C/SMBus? I2C Core Bus Transactions Device Example: EEPROM Device Example: Real Time Clock I2C-dev Hardware Monitoring Using LM-Sensors The Serial Peripheral Interface Bus The 1-Wire Bus Debugging Looking at the Sources Chapter 9. PCMCIA and Compact Flash What's PCMCIA/CF? Linux-PCMCIA Subsystem Host Controller Drivers PCMCIA Core Driver Services Client Drivers Tying the Pieces Together PCMCIA Storage Serial PCMCIA Debugging Looking at the Sources Chapter 10. Peripheral Component Interconnect The PCI Family Addressing and Identification Accessing PCI Regions Direct Memory Access Device Example: Ethernet-Modem Card Debugging Looking at the Sources Chapter 11. Universal Serial Bus USB Architecture Linux-USB Subsystem Driver Data Structures Enumeration Device Example: Telemetry Card Class Drivers Gadget Drivers Debugging Looking at the Sources Chapter 12. Video Drivers Display Architecture Linux-Video Subsystem Display Parameters The Frame Buffer API Frame Buffer Drivers Console Drivers Debugging Looking at the Sources Chapter 13. Audio Drivers Audio Architecture Linux-Sound Subsystem Device Example: MP3 Player Debugging Looking at the Sources Chapter 14. Block Drivers Storage Technologies Linux Block I/O Layer I/O Schedulers Block Driver Data Structures and Methods Device Example: Simple Storage Controller Advanced Topics Debugging Looking at the Sources Chapter 15. Network Interface Cards Driver Data Structures Talking with Protocol Layers Buffer Management and Concurrency Control Device Example: Ethernet NIC ISA Network Drivers Asynchronous Transfer Mode Network Throughput Looking at the Sources Chapter 16. Linux Without Wires Bluetooth Infrared WiFi Cellular Networking Current Trends Chapter 17. Memory Technology Devices What's Flash Memory? Linux-MTD Subsystem Map Drivers NOR Chip Drivers NAND Chip Drivers User Modules MTD-Utils Configuring MTD eXecute In Place The Firmware Hub Debugging Looking at the Sources Chapter 18. Embedding Linux Challenges Component Selection Tool Chains Embedded Bootloaders Memory Layout Kernel Porting Embedded Drivers The Root Filesystem Test Infrastructure Debugging Chapter 19. Drivers in User Space Process Scheduling and Response Times Accessing I/O Regions Accessing Memory Regions User Mode SCSI User Mode USB User Mode I2C UIO Looking at the Sources Chapter 20. More Devices and Drivers ECC Reporting Frequency Scaling Embedded Controllers ACPI ISA and MCA FireWire Intelligent Input/Output Amateur Radio Voice over IP High-Speed Interconnects Chapter 21. Debugging Device Drivers Kernel Debuggers Kernel Probes Kexec and Kdump Profiling Tracing Linux Test Project User Mode Linux Diagnostic Tools Kernel Hacking Config Options Test Equipment Chapter 22. Maintenance and Delivery Coding Style Change Markers Version Control Consistent Checksums Build Scripts Portable Code Chapter 23. Shutting Down Checklist What Next? Appendix A. Linux Assembly Debugging Appendix B. Linux and the BIOS Real Mode Calls Protected Mode Calls BIOS and Legacy Drivers Appendix C. Seq Files The Seq File Advantage Updating the NVRAM Driver Looking at the Sources
2023-12-05 18:11:20 5.42MB linux驱动开发
1
Windriver1200驱动开发软件带注册码
2023-11-22 11:53:58 181.31MB 驱动开发
1
imx6ull嵌入式linux驱动开发指南pdf(正点原子)
2023-11-07 16:29:25 126.18MB linux 驱动开发
1
嵌入式linux下基于libusb的USB驱动开发.pdf
2023-10-25 14:14:00 153KB Linux 操作系统 系统开发 参考文献
基于linux的MAX6675驱动模拟程序,主要用来读取K型热电偶信号转换成的数字信号;包含了驱动、上层测试应用程序,以及MAX6675的数据手册。
2023-10-05 23:08:49 423KB linux驱动开发 s5p6818驱动开发
1
《Linux设备驱动开发详解》中文版 本书是学习Linux Driver 经典书籍
2023-09-14 10:05:02 57.46MB Linux设备驱动开发详解
1