科技
类型
可以朗读
语音朗读
206千字
字数
2023-03-01
发行日期
展开全部
主编推荐语
本书介绍了龙芯1B(LS1B)芯片的原理与应用开发。
内容简介
本书基于LS1B开发套件,讲解LS1B的结构及原理,还介绍进行嵌入式系统开发需掌握的GPIO、UART等外设的基本原理与常用库函数,以及国产物联网操作系统RT-Thread的原理及应用开发。最后通过一个综合设计——基于物联网的智慧路灯,让读者熟悉嵌入式系统设计流程。
目录
- 版权信息
- 内容提要
- 前言
- 第01章 概述
- 1.1 嵌入式系统简介
- 1.2 LS1B简介
- 1.3 LS1B开发套件
- 第02章 LS1B开发套件硬件平台
- 2.1 外部接口
- 2.2 内部结构
- 2.3 最小系统(核心板)设计结构
- 2.3.1 电源电路
- 2.3.2 时钟电路
- 2.3.3 复位电路
- 2.3.4 存储器电路
- 2.4 下载调试接口
- 2.4.1 串口控制台调试程序
- 2.4.2 下载程序到Flash
- 第03章 软件开发基础和集成开发环境LoongIDE
- 3.1 嵌入式系统的程序设计
- 3.2 龙芯嵌入式开发工具
- 3.3 嵌入式系统的结构
- 3.4 嵌入式C语言开发基础
- 3.4.1 数据类型和运算符
- 3.4.2 4种基本程序结构
- 3.4.3 指针与数组
- 3.4.4 代码规范
- 3.5 LoongIDE
- 3.5.1 LoongIDE简介
- 3.5.2 LoongIDE的下载和安装
- 3.5.3 LoongIDE的库函数
- 3.6 第一个嵌入式系统项目
- 3.6.1 新建项目向导
- 3.6.2 项目调试运行
- 3.6.3 下载到Flash存储器中运行
- 第04章 通用输入输出与外部中断
- 4.1 GPIO端口组成及功能
- 4.2 GPIO的硬件结构
- 4.2.1 GPIO输入
- 4.2.2 GPIO输出
- 4.2.3 GPIO寄存器
- 4.3 GPIO的常用库函数
- 4.4 库函数与寄存器的关系
- 4.5 GPIO应用
- 4.6 中断的原理
- 4.7 GPIO中断寄存器
- 4.8 GPIO中断库函数
- 4.9 GPIO应用中断
- 第05章 通用同步/异步通信
- 5.1 串行通信简介
- 5.1.1 串行通信与并行通信
- 5.1.2 串行通信方式
- 5.1.3 串行异步通信和串行同步通信
- 5.1.4 串行异步通信的数据传输形式
- 5.1.5 串行异步通信的参数配置
- 5.1.6 串行通信协议的电气特性和电路连接方式
- 5.2 UART结构及工作方式
- 5.2.1 UART结构
- 5.2.2 串行异步通信的工作方式
- 5.2.3 UART相关寄存器
- 5.3 UART的常用库函数
- 5.4 UART应用
- 第06章 定时器
- 6.1 常用定时器结构及工作方式
- 6.2 PWM输出和PWM定时器
- 6.2.1 PWM结构及工作方式
- 6.2.2 LS1B中PWM的常用库函数
- 6.2.3 PWM输出应用设计实例
- 6.2.4 PWM定时器应用设计实例
- 6.3 RTC定时器
- 6.3.1 RTC结构及工作方式
- 6.3.2 LS1B中RTC的常用库函数
- 6.3.3 RTC定时器应用设计实例
- 6.3.4 RTC时钟功能应用设计实例
- 6.4 WDT
- 6.4.1 WDT结构及工作方式
- 6.4.2 LS1B中WDT的常用库函数
- 6.4.3 WDT应用设计实例
- 第07章 I2C总线
- 7.1 I2C总线通信简介
- 7.1.1 I2C总线介绍
- 7.1.2 硬件结构
- 7.1.3 软件协议工作时序
- 7.1.4 I2C总线的读/写操作
- 7.2 I2C总线的结构和功能
- 7.3 I2C总线的常用库函数
- 7.4 I2C总线上挂载的模块
- 7.5 I2C模块AT24C02应用设计实例
- 7.6 I2C模块DS3231应用设计实例
- 7.7 I2C模块OLED应用设计实例
- 第08章 串行外设接口(SPI)
- 8.1 SPI总线概述
- 8.1.1 SPI定义
- 8.1.2 SPI多从机配置
- 8.1.3 SPI工作时序模式
- 8.1.4 常见串行通信协议对比
- 8.2 SPI模块的结构和功能
- 8.3 SPI模块的常用库函数
- 8.4 SPI模块应用设计实例
- 实例1:SPI串口数据的发送
- 实例2:SPI串口数据实现W25Q32读/写
- 第09章 CAN总线
- 9.1 CAN总线简介
- 9.1.1 硬件协议及编码方式
- 9.1.2 CAN总线协议
- 9.2 CAN总线模块结构和功能
- 9.3 CAN总线模块常用库函数
- 9.4 CAN总线模块应用设计实例
- 第10章 RT-Thread内核及其实现
- 10.1 嵌入式实时操作系统
- 10.1.1 实时操作系统
- 10.1.2 主流嵌入式实时操作系统
- 10.1.3 小而美的物联网操作系统RT-Thread
- 10.2 RT-Thread在LS1B上的实现
- 10.3 RT-Thread内核及在FinSH Shell中运行调试
- 10.3.1 LS1B目录结构及内核启动过程
- 10.3.2 在FinSH Shell中运行和调试程序
- 10.4 RT-Thread的内核基础
- 第11章 RT-Thread的线程管理
- 11.1 进程与线程
- 11.2 线程及其功能特点
- 11.3 线程工作机制
- 11.4 线程管理
- 11.4.1 线程调度器接口
- 11.4.2 线程管理接口
- 11.4.3 线程的相关问题
- 11.5 线程示例
- 11.5.1 动态线程和静态线程
- 11.5.2 入口函数的重用
- 11.5.3 线程的时间片轮询调度
- 11.5.4 线程让出
- 11.5.5 线程抢占
- 11.5.6 线程恢复
- 11.5.7 线程挂起
- 11.5.8 线程睡眠
- 11.5.9 线程控制
- 11.5.10 线程的综合运用
- 11.6 空闲线程及钩子
- 11.6.1 输出线程间的切换信息
- 11.6.2 计算CPU的使用率
- 第12章 RT-Thread的系统节拍与定时器管理
- 12.1 时钟管理和时钟节拍
- 12.2 时钟节拍的实现方式
- 12.3 定时器基础
- 12.4 动态定时器
- 12.5 静态定时器
- 12.6 定时器控制接口
- 12.7 如何合理使用定时器
- 第13章 RT-Thread线程间同步与通信
- 13.1 中断与临界区的保护
- 13.1.1 线程抢占导致临界区问题
- 13.1.2 如何进入临界区
- 13.1.3 临界区的中断服务程序
- 13.2 线程同步
- 13.2.1 使用开关中断
- 13.2.2 使用调度器锁
- 13.3 信号量
- 13.3.1 静态信号量与动态信号量
- 13.3.2 使用信号量的线程优先级反转
- 13.3.3 使用信号量的生产者和消费者例程
- 13.3.4 使用信号量解决哲学家就餐问题
- 13.4 互斥量
- 13.4.1 互斥量使用的基本例程
- 13.4.2 互斥量优先级反转例程
- 13.4.3 互斥量优先级继承例程
- 13.5 事件
- 13.6 邮箱基本使用
- 13.7 消息队列
- 13.8 邮箱与消息队列的区别
- 13.9 信号的概念及使用
- 13.9.1 信号的概念
- 13.9.2 信号的应用例程
- 第14章 RT-Thread内存管理
- 14.1 内存管理基础知识
- 14.2 RT-Thread内存管理基础
- 14.3 动态内存分配和使用
- 14.4 内存池
- 14.5 内存池静态内存分配
- 14.6 动态内存管理
- 14.7 内存环形缓冲区
- 第15章 基于RT-Thread的LS1B文件系统
- 15.1 文件系统、文件与文件夹
- 15.2 文件和目录的接口
- 15.3 文件系统编程示例
- 第16章 基于RT-Thread的LS1B网络系统
- 16.1 网络编程基础
- 16.1.1 TCP/IP
- 16.1.2 IP地址、端口与域名
- 16.1.3 网络编程协议
- 16.2 TCP/IP服务器端数据收发编程示例
- 16.3 TCP/IP客户端数据收发编程示例
- 第17章 基于RT-Thread的LS1B设备操作
- 17.1 I/O设备管理框架
- 17.2 RT-Thread的设备接口
- 17.2.1 设备驱动必须实现的接口
- 17.2.2 设备驱动实现的步骤
- 17.2.3 编写驱动并自动注册
- 17.2.4 编写应用程序测试驱动
- 第18章 嵌入式系统的综合设计
- 18.1 嵌入式系统设计流程
- 18.2 案例:基于物联网的智慧路灯
- 18.2.1 项目背景和需求
- 18.2.2 系统总体设计
- 18.2.3 硬件设计
- 18.2.4 软件设计
- 18.2.5 智慧路灯的系统调试
- 参考文献
- 致谢
展开全部
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。