自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MDK常见概念

即灵活的静态存储控制器,可以用来访问外部SRAM、 NAND/NOR FLASH。是直接存储访问控制器,可以实现数据的自动搬运,整个过程不需要。即单片机的内存,用于数据存储,直接挂载在总线矩阵上面,(1)typedef定义结构体类型。外设到内存、内存到内存的数据传输。,从而保证高效高速的访问内存。,输出任意波形,传输过程不需要。控制器,可以实现内存到外设、支,从而更高效的处理事务。速度访问时,需要插入。8个时钟周期 延迟。

2024-08-14 16:02:52 284

原创 MDK 常用配置

Code:表示代码大小,占用5442字节。RO-Data:表示只读数据所占的空间大小,一般是指const修饰的数据大小。RW-Data:表示有初值(且非0)的可读写数据所占的空间大小,它同时占用FLASH(存放其初始值)和RAM空间。ZI-Data:表示初始化为0的可读写数据所占空间大小,它只占用RAM空间。代码总大小()为:FLASH占用6068字节(Code+ RO + RW),SRAM占用1416字节(RW + ZI。

2024-08-14 15:35:44 204

原创 C语言编程规范:常见注意事项

C语言编程规范:常见注意事项

2024-08-14 14:14:58 272

原创 程前朋友圈-keepin手机锁访谈观后感

他意识到,自己需要的其实是一个简单而实用的手机锁,而不一定非得通过复杂的锁具来实现。从最初寻找模具厂的高昂成本,到后续因工艺问题导致的模具问题,他不断尝试,不断失败,但从未放弃。经过四年的努力和发展,小伙的公司已经成功推出了两代产品并获得了巨大的成功。他的产品不仅在国内市场上取得了良好的销售业绩还积累了大量的忠实用户。这位94年的小伙,因为考研期间对手机的依赖,而萌生了一个关于手机锁的独特想法。这个看似简单的想法,最终被他转化为了一个爆款产品,一人独自创造了3千万的销售额。

2024-05-18 19:54:11 488

原创 TINA 使用教程

添加横扫曲线的电阻,选择R3:8K-20K。导入其他厂家的二极管SPICE。获取SPICE模型,作为宏导入。2,选中波形,点击处理-平均值。由于输出的容性负载导致的振荡。分段线性源,可以设置成周期。查看电感电流稳定后的平均值。滤波器的幅频特性和相频特性。点击新增的被测信号位置。加:1 后,自动分离。

2024-05-15 22:09:59 1137

原创 费曼学习法个人总结-1

1,知道它叫什么和懂得它是什么是两件事,要了解事物的本质,不应该只是了解名字。5,解决拖延的方法:不管怎样,先学起来,慢慢就会有了干劲。7,在宝贵的时间内要多做重要的事,避免不重要的事占用时间。4,智力三大核心要素:逻辑能力,语言能力,热情。6,顺利开始的10分钟学习的3个技巧。2024年4月27日。

2024-04-27 23:22:35 338

原创 小米造车的感悟

2,时机:小米汽车不是第一个吃螃蟹的,有很多新势力纷纷入局,也有很多新能源车企被淘汰出局,小米虽然没有过早的制造汽车,但小米投资了很多新能源车企,深度了解车企的运行模式。看了小米工厂的生产制造的车间,全车间无人化制造,又有足够多的自主研发设计,生产环节,检验环节,恶劣工况测试环节。做好自己,做好当下。那些看瓜,吃瓜,制造瓜的自媒体时代的弄潮儿们,更应该脚踏实地的去学一门手艺,以免哪天连靠种瓜获取流量赚钱的机会都没有了。5,人:小米雷军技术出生,也是出色的投资人,业内口碑较好,也能聚集更优秀的人一起成事。

2024-04-18 08:28:09 234

原创 TVS参数、选型、对比

5,一般的漏电流

2024-04-16 09:09:41 1810 2

原创 成年人毕业后如何继续抓学习

a) 搜索引擎是一个实用的工具,用于验证想法或确认疑点。首先,可以通过观看相关纪录片了解书籍的框架和人物关系,为深入阅读打下基础。a) 机械硬背15000个单词是学习英语的基础,有助于提高听力理解能力。a) 看完书籍或资料后,尝试用自己的语言组织并写出一些心得或感想。b) 通过不同角度和人物对同一件事的描述,可以加深对事情的理解。b) 背单词需要持续的刺激和复习,可以利用碎片时间进行记忆。c) 写文章的人需要记住知识点的位置,以便需要时查阅。a) 目标设定要小而具体,避免给自己过大的压力。

2024-04-15 22:30:24 303

原创 MOS管电路的应用及注意事项

如下图所示为实际的波形。在板子没有上电的时候,有这个电阻GS之间就不会提供静电荷,尤其在搬运过程中,GS电容之间很容易积累电荷,或者静电作用到MOS管的G极,此时给GS电容充电可能会导致MOS管误导通。​ 此外开通太快引起容易产生EMC的问题,此时因为du/dt很大,开通快dt小,那么DS开通过程中DS两端的压差在变小,如果Vbus的电压高,那么电压的变化du很大,所以du/dt很大。首先,门极悬空时DS之间电压不会导致MOS管导通损坏,同时在没有驱动时能将MOS管的门极钳在低位,不会误动作,能可靠通断。

2024-04-13 22:42:25 1701

原创 百万成神-转自九边pro 的分享

那怎么训练这种倒出来的能力呢?13,年初的时候,不知道在哪里看到一个说法,说是如果你准备学点儿什么东西,如果学的东西是全新的东西,大脑很容易过载,导致沮丧和失落,然后就要放弃。2,我问过那个作者,他是怎么想到的,他说他也不知道,反正每天都写,一边写一边查资料,越写越溜,到后来已经完全随心所欲了。我的思考:学习新技能,集中注意力,保证时间投入,新旧交替,新知识不要超过15%,否则容易过载,沮丧,失望,放弃。我的思考:写代码和写文章一样,不间断的写,不停的写,把自己的想法写到文章和代码中,趟过无聊期。

2024-04-13 09:18:12 265

原创 职场新员工倒挂老员工工资

解释了职场工资倒挂现象与工资构成的基本概念。指出公司工资受市场行情和通货膨胀等因素影响。分析公司倾向于高薪招聘新员工而非给老员工加薪的原因,主要是节省成本和减少影响。

2024-04-13 00:20:46 488

原创 贫穷的本质

这往往是因为家长缺乏相关知识,如未给孩子驱虫、未使用加碘食盐、未提供干净的饮用水或未及时接种疫苗等,这些都可能导致孩子的发育受阻,甚至造成终身的残疾。尽管底层人民可能面临食物匮乏的问题,但无论吃什么,电视是他们获取信息的重要渠道,这也体现了教育和信息获取的重要性。补充另外在《贫穷的本质》一书中提到,穷人往往更倾向于奢侈品消费,这会导致他们体内的皮质醇水平升高,进而引发一系列副作用,如疲劳、注意力不集中、报复性饮食、情绪低落等。以KIPP为例,它侧重于基本技能的培养,借鉴了监狱的一些管理模式,

2024-04-12 23:41:11 695

原创 FreeRtos入门-10 裸机程序的不足

缺点,如果do_something_for_xxx执行过长,也会影响其他do_something_1运行。执行时间很短,不超过1个tick时,效果很好。缺点:任务1和任务2之间的互相影响。执行时间很短,上述代码很适合。在中断中提供个标志位,快进快出。

2024-04-09 23:24:08 199

原创 九边里面的故事 35岁中年

路不能越走越窄,思路不能越想越局限,人生漫漫,我们值得放手一搏,也值得长久的坚持向上的动力,更要正确看待暂时的所谓的失败。临近35岁时,开始考虑之后与平台的共存,自身想要的除钱之外,的很多东西:比如时间,与孩子相处和家人相处的投入。没上大学,18岁工作,工作1年开始创业,第一次创业因资金短缺失败,又打工3年再次创业,至今7年,有房有车,存款百万左右,现在没方向,做大资金不够,不做又不甘于现状……目前,45岁,国企一线员工,55万贷款,存款20个,一直想整个副业缓解下,但是感觉啥都不好干。

2024-04-09 00:17:29 619

原创 FreeRtos入门-9 统计任务信息

2)#define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS TimerInit 被定义为TimerInit();2,栈使用情况:由于创建任务时候,栈固定的填充了0xa5,以后可以通过使用下面函数查看栈的高水位,也就是剩余栈空间。3,任务运行时间统计:需要比tick更快的始终,比如tick周期1ms,选择0.1ms的定时器。在portGET_RUN_TIME_COUNTER_VALUE=》1,目的:可以通过查看任务的CPU情况、使用栈情况,进行针对优化。

2024-04-08 23:33:36 560

原创 FreeRtos入门-8 调试

在FreeRTOS里,使用。

2024-04-07 23:20:29 729

原创 原来原来我们自己身上是有玄学的。要遵循下面这8点,你的生活就会发生翻天覆地的改变

第四,不要让别人的言论影响你的情绪,要保持内心的宁静,让那些喧嚣的事情自己安静下来;第一,当事情超出了你的掌控范围时,你就得顺其自然,一切都是最好的安排;第五,犯了错误没关系,只要你吸取了教训,就放下吧,不应该纠结;第三,不要过早担心未来会发生的事情,享受当下的快乐最重要;第六,要相信自己的判断和决策,坚信你所认定的事实就是事实;第七,千万不要想改变任何人,每个人都有自己的路要走;第八,发生在你身上的所有事情都是有利于你成长的好事。第二,你要专注于自己,不要被外面的负面因素干扰到;

2024-04-06 20:07:24 223

原创 FreeRtos入门-8 资源管理

资源管理主要涉及到对共享资源的有效和安全的访问控制,共享资源可以是内存、I/O设备、缓冲区等,需要在多个任务或中断服务程序中共享。在FreeRTOS中,临界资源是指在访问共享资源时需要保持原子性的部分,即必须完整运行、不能被打断的代码段。这些资源在某一时刻只能由一个进程或线程进行访问,以避免数据损坏或不一致的情况。当多个线程需要同时访问同一个共享资源时,如果不加以限制,就可能出现数据冲突或不一致的情况。因此,FreeRTOS通过一系列机制,如临界区、关中断等,

2024-04-06 19:56:35 692

原创 FreeRtos入门-7 中断管理

pxHigherPriorityTaskWoken 等于 pdTRUE:函数的操作导致更高优先级的任务就绪了,ISR 应该进行任务切换。这些带ISR后缀的函数,不会发起调度,会唤醒任务,但不会引起调度,会在xHigherPriorityTaskWoken记录是否需要调度。3,通过配置中断的优先级,可以确保高优先级的中断能够立即响应,而低优先级的中断则可以在需要时等待。使用同一套函数的话,需要增加额外的判断代码、增加额外的分支,是的。在任务、ISR 中调用时,需要的参数不一样,

2024-04-06 19:10:03 830

原创 FreeRtos入门-6 定时器

因此,对于按键中断和定时器中断,它们的优先级都是相对于其他中断而言的,而不是相对于任务的。这意味着,当一个中断发生时,即使当前正在执行的任务优先级非常高,CPU也会立即停止当前任务的执行,转而处理中断服务程序。2,当按键按下后,进入回调回调函数判断发生的GPIO,将对应的time[n] = 当前tick+20,即20ms之后的tick值算出来。1,定时器回调函数受守护任务管理,在freertos文件中,要使能定时器,指定守护任务的优先级、长度、深度。//按键按下复位定时器,复位相当于启动。

2024-04-06 14:02:09 1043

原创 【观后感】血拼中国工厂 第1集:再见老板

在故事中,还有一位名叫小张的残疾人,尽管名字在片中并未明确提及,但他的形象却让人印象深刻。然而,在我看来,可能还有一些其他因素,比如小张可能觉得前路无望,思想散漫,导致他在工作中不尽心尽力。在寻找老乡还钱的过程中,他发现老乡正在学习某大学的网络课程,但学费高达一万多,他无法承担,只能作罢。故事的主人公是老潘,一位来自南京的60多岁老人,他充满活力,独自闯荡广东佛山,在一家公司辛勤耕耘了十几年。首先,一份具有明确前景的工作机会,无论是成为技术上的佼佼者,部门的研发管理人员,还是公司的中坚力量。

2024-04-06 00:02:56 328

原创 FreeRtos入门-5 任务通知

在FreeRTOS中,任务通知、队列、信号量和事件组都是用于任务间通信和同步的机制,但它们各自具有不同的特性和适用场景。任务通知的主要优势在于其高效性和明确性。使用任务通知发送事件或数据给某个任务时,效率更高,且可以明确指定通知哪个任务。此外,任务通知还更节省内存,因为使用它无需额外创建结构体。然而,任务通知的限制在于它不能向中断服务程序(ISR)发送数据,因为ISR并没有任务结构体。同时,任务通知发送的数据只能由指定的任务独享。

2024-04-05 22:54:19 652

原创 FreeRtos入门-4 事件组与同步点

事件组同步点创建//1,创建事件组设置//设置事件组bit0 位等待//xclearonexit:退出是否清除。xwaitforallbits:是否等待所有的事件位有数据总结1,事件组解决多个生产者,都在产生数据时,各自往对应的bit位给状态通知。2,消费者等待不同的bit未是否完成,可以是等待所有位也可以只等待其中一个完成。3,事件组只能传递完成状态,而不能传递数据,传递数据还要通过队列方式1,同步点,创建同事件组。

2024-04-04 21:02:37 448

原创 FreeRtos入门-3 信号量(计数值、二进制、互斥量、递归锁)

1,信号量与队列的区别,队列可以在不同任务中传递信息,既可以把生产者的数据和生产者的状态告知给其他的任务。而信号量只能传递不同任务的完成状态,无法传递数据。2,涉及信号量(semaphore)的类型有:计数值(counting)、二进制(Binary)、互斥量(mutex)、递归锁(recursive)二进制是特殊的计数值,计数最大值为1二进制的缺陷1,存在优先级反转二进制的缺陷2,存在别被人解锁风险针对二进制的缺陷1,使用互斥量,通过优先级继承解决优先级反转问题。

2024-04-04 19:41:06 548

原创 《中国工厂》纪实纪录片观后感

然而,制度的推广并非易事。向总借钱开工厂,经历了数年的痛苦挣扎,才逐渐摆脱了高利贷的束缚。故事的主人公,向总,是一个出身贫寒但怀揣梦想的创业者。这部拍摄于2015年前后的纪录片,以广东佛山的一个典型中国小型企业为焦点,生动展现了这家企业在市场变化中转型的艰辛历程。他拥有豪车、别墅和幸福的家庭,还为父母买了新房,改善了他们的生活条件。总的来说,《中国工厂》这部纪录片通过真实的故事,展现了中国小型企业在转型过程中的艰辛与成长。它让我更加深入地理解了创业的艰辛和成功的来之不易,也为我未来的发展提供了宝贵的启示。

2024-04-03 23:05:25 661

原创 FreeRtos入门-2队列和队列集

队列集的本质是队列,它内部存放的是“队列句柄”而不是直接的数据项。当其中有队列有数据到达时,队列集的接口会返回可读的队列句柄。用户获得句柄后,就可以从相应的队列中读取数据。队列通常用于任务之间的通信和数据传递,每个任务可以往队列中写入数据,也可以从队列中读取数据。队列有一定的容量限制,队列满时,试图向其添加更多数据项的操作将被阻塞,直到有空间可用。队列集实际上是保存了一组队列句柄的队列。它允许任务等待多个队列中的任何一个,当其中任何一个队列有数据到达时,队列集就会唤醒等待的任务。这样,任务就可以更灵活

2024-04-02 09:29:22 908

原创 FreeRtos入门-1任务相关概念

文章介绍了FreeRTOS中的vTaskDelay和vTaskDelayUntil函数,分别用于固定延时和间隔延时。vTaskDelay使任务等待固定时间后继续执行,而vTaskDelayUntil确保任务间隔固定时长后再次运行。此外,文章还提及了相关的任务创建函数xTaskCreate及其返回值检查的重要性,以及任务栈空间分配和任务优先级设置等关键概念。通过本文,读者可以了解FreeRTOS中任务延时和任务创建的基础知识。

2024-04-01 09:57:37 920

原创 【FPGA/verilog -入门学习17】vivado 实现串口自发自收程序

bsp_generate_clk_en:接收波特率时钟产生模块,当rx接收到数据时,给一个start信号给波特率时钟产生模块,由bsp时钟产生模块按9600波特率产生时钟使能信号bsp_generate_clk_en 用于同步rx 接收模块接收数据的时序。tx发送模块:当接收到来子rx 接收模块发过来的rx_done 信号后,将[7:0]rx_data 的数据按波特率时钟产生模块的顺序依次发送出去。bsp_generate_clk_en:发送波特率时钟产生模块,功能同接收模块。修改代码后,测试ok。

2024-01-10 15:43:06 857

原创 【FPGA/verilog -入门学习16】fpga状态机实现

(每个时钟周期输入 1bit),当检测到一串“101100”的输入数据时,产生一个时钟周期的。用两段式状态机设计序列码检测机。这个序列码检测机用于检索连续输入的 1bit 数据。

2024-01-02 15:56:56 564

原创 【FPGA/verilog -入门学习15】vivado FPGA 数码管显示

1,74hc595驱动,将串行数据转换成并行输出。对应研究手册2,发送之前将要发的数据,合并成高8位:SEG,低8位:SEL, 结合testbanch查看波形,使用测试代码验证显示。

2024-01-02 13:35:46 1844

原创 【FPGA/verilog -入门学习14】vivado FPGA按键消抖

【代码】【FPGA/verilog -入门学习14】vivado FPGA按键消抖。

2023-12-28 17:15:01 604

原创 【FPGA/verilog -入门学习13】verilog 1s流水灯实验

另外移位还可以通过以下方式实现if(cnt == MAX_CNT) led

2023-12-27 17:14:35 571

原创 【TI毫米波雷达入门-12】myreadDCA1000.m

DCA1000 With x16xx and IWR6843 MATLAB Example

2023-12-26 13:07:23 717

原创 【STM32单片机入门-1】堆栈/全局变量,局部变量,静态全局变量,局部静态变量等

分配内存是分配在栈存储区上的,其作用域也只是在局部函数内,在定义该变量的函数内,只要出了该函数,该局部变量就不再起作用,该变量的生命周期也只是和该函数同在。分配的内存也是在静态存储内存上的,其第一次初始化后就一直存在直到程序结束,该变量的特点是其作用域只在定义它的函数内可见,出了该函数就不可见了。全局静态变量 (static):分配的内存与全局变量一样,也是在静态存储内存上,其生命周期也是与整个程序同在的,从程序开始到结束一直起作用,首先,我们逐一回答您的问题。分配的,所以它们指向的地址是在堆空间中的。

2023-12-21 13:03:34 4927

原创 【TI毫米波雷达入门-11】毫米波速度相关计算

在这里的示例中, 雷达前方 有两个物体, 它们与雷达的距离相同, 但速度不同,相对于雷达的 速度分别为 V1 和 V2。假设这里有 N 个 等间隔的线性调频脉冲, 那么根据我们 之前的讨论,与其中的 每个线性调频 脉冲相对应的 距离 FFT 将在完全 相同的位置具有峰值。所以,在这里的 这个等式中, 与所发射的这两个 线性调频脉冲 相对应的峰值 相位之间的 相位差表示为 4π 乘以物体在 该时段内移动的 距离除以 λ。实际还和其他参数有关 比如,表面物体的面积,发射功率,发射/接收天线的增益,总测量时间,

2023-12-14 19:01:01 1855

原创 【FPGA/verilog -入门学习12】Verilog可配置的PWM设计,参数传递的3种方式

去掉模块定义中的这4个输入,改为VIO提供,由软件控件配置参数,通过JTAG 线缆,传递给芯片。o_pwm 在计数到0~正数占空比来临前置高,其他时间置低。4,o_vld 在最高计数来临时,置高,其他时间置低。将i_en 配置成按钮button ,按下是高电平。output reg o_vld,//有效信号。1,需求实现可配置PWM输出(频率,占空比)3,定义计数寄存器reg [7:0]cnt;用于计数,0~ 分频最大值,其他3个配置位,10进制输入。步骤2,添加vio ip核。点击i_en 开始测试。

2023-12-14 14:32:30 3365

原创 【TI毫米波雷达入门-10】TI毫米波速度检测思路

两个维度看图表从range维度,水平方向上,反映每个chirp 发出的FMCW被接收天线检测到,2个点的目标,对应两个物体的距离信息。从chirp维度,垂直方向上,反应一个物体在第一个chirp出现的在刻度1,(例如第3个采样点采到),在第二个chirp上出现在刻度2(例如采样点8采集到),对应物体的距离发生变化。从而进一步可以算出目标物体速度。1,中频信号的幅度,时间可以用公式表达:2,Δ3,对于Δd = 1mm的物体,占波长λ 的1/4,Δθ = π。

2023-12-13 13:31:07 1525

原创 【FPGA/verilog -入门学习11】verilogTestbench中的文本文件写入,读出,打印等操作

即$readmemh ("",,,),此时会将从数据文件中读到的第1个数据填入数组的起始地址,此后类推,直到指定的终结地址对应的数组也被赋值。即$readmemh ("",,),此时会将从数据文件中读到的第1个数据填入数组的起始地址,此后类推,直到数组被填满。而之前被起始地址跳过的数组的数据则不会被赋值。指定数据从数组的地址2开始赋值,直到地址8终结,则地址2应该被赋值0,地址3被赋值1,···等等,直到地址8也被赋值。

2023-12-12 16:21:10 3464

原创 【FPGA/verilog -入门学习10】verilog 查表法实现正弦波形发生器

那么就意味着你会延时两个时钟周期输出数据,在Summary中也可查看。1,使用matlab 生成数据,制作sin_rom.coe文件。寻址的位宽是10位,数据量是1024个,输出的数据是16位。y范围:0~2^16 -1 = 0~65535。输入是0~1023 1023 占用10位。用查找表设计实现一个正弦波形发生器。这里要注意一下,只要在IP中勾选了。

2023-12-12 14:17:17 3123

使用matlab对IWR16xxDAC100的数据生成表格

使用matlab对IWR16xx DAC100的数据生成表格 matlab_lab_adc_data readDCA1000 unititled.m

2023-11-02

空空如也

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

TA关注的人

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