___2017

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
受不了xxxx恶心人的行为,遂搬迁至博客园。
始发:2014-03-27 13:26:08

此为作者学习工作中的笔记,多有网搜资料;故,若侵权,请告知,第一时间删除。

10.21

在C/C++中,char是C/C++整型数据中比较古怪的一个,而且关于char还有一个特殊的语言就是char *,它在C/C++中有专门的语义,既不同于signed char *,也不同于unsigned char *,专门用于指以'\0'为结束的字符串。

2020.6.13 add

Unlike the other integer types, there are three distinct basic character types: charsigned char, and unsigned char.
In particular, char is not the same type as signed charAlthough there are three character types, there are only two representations: signed and unsigned. The (plain) char type uses one of these representations. Which of the other two character representations is equivalent to char depends on the compiler.
char 到底是signed char还是unsigned char得看编译器:VC编译器、x86上的GCC都把char定义为signed char,而arm-linux-gcc却把char定义为unsigned char.
 

10.30

TIM1是一个完整的马达控制用定时器外设,TIM1_CH1和TIM1_CH1N,用于驱动上下两个功率管。如果Deadtime为0,则TIM1_CH1N是TIM1_CH1的反相,如果Deadtime不为0,则在TIM1_CH1N上插入了Deadtime,防止上下功率管同时导通。

TIM1_ETR是外部触发输入管脚;

TIM1_BKIN是故障信号,用来关闭TIM1的输出。

 

11.8

MDK主要是为终端客户提供价格低廉,功能强大的开发工具。集成了RealView编译工具,Keil uVision开发环境,支持基于ARM7/ARM9/Cortex-M1/Cortex-M3产品的仿真,提供非常高效的RTOS Kernel。除此,提供的Real-Time库还有TCP/IP网络套件,Flash文件系统,USB器件接口,CAN总线接口等,方便终端用户进行应用开发。

 

11.11

启动模式设置为SystemBoot即两个Boot引脚,应该是Boot0=1;Boot1=0

查资料看到说:

  • BOOT1=X  BOOT0=0 启动模式:User Flash memory=你的应用程序
  • BOOT1=0  BOOT0=1 启动模式:System memory=ST为串口下载固化的Bootloader
  • BOOT1=1  BOOT0=1 启动模式:Embedded SRAM=内部SRAM启动。

BOOT1 BOOT0

  • x0=STM32从片上FLASH启动
  • 11=STM32从片上SRAM启动
  • 01=STM32从系统FLASH启动,运行系统启动(bootloader)程序

11-14

公用电话交换网(PSTN——Public Switch Telephone Network),即我们日常生活中常用的电话网。

PSTN是一种以模拟技术为基础的电路交换网络。在众多的广域网互连技术中,通过PSTN进行互连所要求的通信费用最低,但其数据传输质量及传输速度也最差,同时PSTN的网络资源利用率也比较低。

通过PSTN可以实现的访问:-拨号上Internet/Intranet/LAN;-两个或多个LAN之间的网络互连;-和其它广域网技术的互连 尽管PSTN在进行数据传输时存在这样或那样的问题,但这是一种仍不可替代的联网介质(技术)。特别是Bellcore发明的建立在PSTN基础之上的xDSL技术和产品的应用拓展了PSTN的发展和应用空间,使得联网速度可达到9Mbps~52Mbps之间。

PSTN提供的是一个模拟的专有通道,通道之间经由若干个电话交换机连接而成。当两个主机或路由器设备需要通过PSTN连接时,在两端的网络接入侧(即用户回路侧)必须使用调制解调器(Modem)实现信号的模/数、数/模转换。 从OSI七层模型的角度来看,PSTN可以看成是物理层的一个简单的延伸,没有向用户提供流量控制、差错控制等服务。而且,由于PSTN是一种电路交换的方式,所以一条通路自建立直至释放,其全部带宽仅能被通路两端的设备使用,即使他们之间并没有任何数据需要传送。因此,这种电路交换的方式不能实现对网络带宽的充分利用。下图是一个通过PSTN连接两个局域网的网络互连的例子。在这两个局域网中,各有一个路由器,每个路由器均有一个串行端口与Modem相连,Modem再与PSTN相连,从而实现了这两个局域网的互连。 

 

PSTN的入网方式比较简便灵活,通常有以下几种:

  • 通过普通拨号电话线入网。只要在通信双方原有的电话线上并接Modem,再将Modem与相应的上网设备相连即可。目前,大多数上网设备,如PC或者路由器,均提供有若干个串行端口,串行口和Modem之间采用RS-232等串行接口规范。这种连接方式的费用比较经济,收费价格与普通电话的收费相同,可适用于通信不太频繁的场合。
  • 通过租用电话专线入网。与普通拨号电话线方式相比,租用电话专线可以提供更高的通信速率和数据传输质量,但相应的费用也较前一种方式高。使用专线的接入方式与使用普通拨号线的接入方式没有太大的区别,但是省去了拨号连接的过程。通常,当决定使用专线方式时,用户必须向所在地的电信局提出申请,由电信局负责架设和开通。
  • 经普通拨号或租用专用电话线方式由PSTN转接入公共数据交换网(X.25或Frame-Relay等)的入网方式。利用该方式实现与远地的连接是一种较好的远程方式,因为公共数据交换网为用户提供可靠的面向连接的虚电路服务,其可靠性与传输速率都比PSTN强得多。

11.18

DVR(Digital Video Recorder)——数字视频录像机或数字硬盘录像机,我们习惯上称为硬盘录像机。相对于传统的模拟视频录像机,采用硬盘录像,故常常被称为硬盘录像机,也被称为DVR。它是一套进行图像存储处理的计算机系统,具有对图像/语音进行长时间录像、录音、远程监视和控制的功能。

DVR采用的是数字记录技术,在图像处理、图像储存、检索、备份、以及网络传递、远程控制等方面也远远优于模拟监控设备,DVR代表了电视监控系统的发展方向,是市面上电视监控系统的首选产品。一般分为:硬盘录像机,PC式硬盘录像机和嵌入式硬盘录像机等。

 

SDK(Software Development Kit,即软件开发工具包)一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合,一般而言SDK即开发Windows平台下的应用程序所使用的SDK。

 

DLL( Dynamic Link Library,动态链接库)。在windows环境下含有大量 .dll格式的文件,这些文件就是动态链接库文件,其实也是一种可执行文件格式。跟 .exe 文件不同的是,.dll文件不能直接执行,它们通常由 .exe 在执行时装入,内含有一些资源以及可执行代码等。

 

绝对路径:是从盘符开始的路径,形如C:\windows\system32\cmd.exe

相对路径:是从当前路径开始的路径,假如当前路径为C:\windows

要描述上述路径,只需输入system32\cmd.exe

实际上,严格的相对路径写法应为.\system32\cmd.exe

 

11.25

Perl从最初被当做一种跨平台环境中书写可移植工具的高级语言开始,被广泛地认为是一种工业级的强大工具,可以在任何地方用来完成你的工作。perl的前身是Unix系统管理的一个工具,被用在无数的小任务里。后逐渐发展成为一种功能强大的程序设计语言,用作Web编程、数据库处理、XML处理以及系统管理;在完成这些工作时,同时仍能处理日常细小工作,这是它的设计初衷。

Perl特别适合系统管理和Web编程。实际上已经被用在所有Unix(包括Linux)捆绑在一起作为标准部件发布,同时也用在Microsoft Windows和几乎其他所有操作系统。

 

C程序大致来讲可以分为四个数据区:常量区静态区堆区栈区

常量区存储了未被作为初始化使用的字符串常量和被const修饰的全局变量,其特点是只可被访问不可被写入,生命周期同程序的运行过程。

静态区存储了全部的全局变量,和所有被static修饰的变量(包括全局和局部),其特点是生命周期很长(为一次程序的运行过程)并且只被初始化一次(在编译之后就已完成!!!)。

栈区存储了所有自动存储(不加任何存储类型关键字修饰或被auto修饰)的局部变量,其特点是生命周期很短,仅仅是该变量所在函数的一次调用过程。运行时有操作系统分配并在函数结束后回收。

堆区是由操作系统负责维护的大片内存池,使用时需手动申请(调用malloc家族函数),但使用完毕后需手动释放,否则会造成严重的内存泄漏,直到该进程退出后才会被操作系统回收。

 

11.26

BusyBox 是一个集成了一百多个最常用linux命令和工具的软件。BusyBox包含了一些简单的工具,例如ls、cat和echo等等,还包含了一些更大、更复杂的工具,例grep、find、mount以及telnet,简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Android 系统的自带的shell。

BusyBox 最初是由 Bruce Perens 在 1996 年为Debian GNU/Linux安装盘编写的。其目标是在一张软盘上创建一个可引导的GNU/Linux 系统,这可以用作安装盘和急救盘。

 

Scratchbox 是一个帮助嵌入式Linux 跨平台编译工具的集合,其目的主要是使得嵌入式Linux 应用程序开发更加容易,它也提供了完整的集成工具链用来跨平台编译集成出一个Linux 发布版。

注:同样功能还有 Buildroot - Making Embedded Linux Easy,Yocto - IT'S NOT AN EMBEDDED LINUX DISTRIBUTION, IT CREATES A CUSTOM ONE FOR YOU.

 

export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆(的shell)操作。

 

11.27

POSIX代表“ 可移植操作系统接口(Portable Operating System Interface of Unix) ”,它定义了一组标准,以提供不同计算平台之间的兼容性。该标准的当前版本是IEEE 1003.1 2016,可以从OpenGroup POSIX规范访问。以前的版本包括POSIX 2004POSIX 1997 。 POSIX 2016版基本上是POSIX 2008和勘误表(也有POSIX 2013版本)。

POSIX为类UNIX操作系统和其他操作系统定义了各种工具接口,命令和API。

以下被认为是在POSIX标准化的范围内:

  • 系统接口(函数,宏和外部变量)
  • 命令解释器,或Shell( sh实用程序)
  • 公用事业(如morecat, ls )

在POSIX范围之外:

  • DBMS接口
  • 图形界面
  • 二进制代码可移植性
posted on 2020-06-13 16:13  yin'xiang  阅读(202)  评论(0编辑  收藏  举报