赞
踩
往期周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz!
目录
1、Matlab2022b发布,支持从 .NET 应用程序调用 MATLAB
2、FatFS作者ChaN老师分享的耳机放大器文章说明已经发布,包含固件源码
4、英伟达发布2000TFLOPS的雷神芯片Thor,用于自动驾驶
9、Google推出iMX RT1176配合自家珊瑚TPU的套件
12、国产海天芯生产的三位半HT7106和四位半HT7135万用表IC
(4)极海通过TüV莱茵ISO 26262功能安全管理体系认证
GUI综合实战视频教程第1期:综合UI项目规划以及AppWizard和ThreadX GUIX初识(2022-09-24)
https://www.bilibili.com/video/BV1RT411T7PL
《安富莱嵌入式周报》第284期:Matlab2022b发布,支持从 .NET 调用,耳机放大器,牛屎芯片替换,JSON可视化,开源的飞行软件和嵌入式系统框架
https://ww2.mathworks.cn/product ... atest_features.html
详细更新如下:
代码如下:
- /*-------------------------------------------------*/
- /* Headphone Amplifier Controller (C)ChaN, 2022 */
- /*-------------------------------------------------*/
-
- #include <avr/io.h>
- #include <avr/sleep.h>
- #include <avr/interrupt.h>
-
- FUSES = {0x6A, 0xFD}; /* ATtiny13A fuses: Low, High */
-
-
- #define BLV_LOW 2.3 /* Low battery threshold [volt] */
- #define BLV_OFF 2.1 /* Shutdown threshold [volt] */
- #define MUL_VIN 0.333
- #define VREF 1.1
- #define VOLT2AD(v) ((uint16_t)(v * MUL_VIN * 1024 / VREF))
-
- #define HOLD_TIME 50 /* Button hold time to trigger on/off (x10ms) */
-
-
- #define POWER_ENABLE() PORTB |= _BV(3)
- #define POWER_DISABLE() PORTB &= ~_BV(3)
- #define OUT_ENABLE() PORTB |= _BV(0)
- #define OUT_DISABLE() PORTB &= ~_BV(0)
- #define LED_ON() PORTB |= _BV(2)
- #define LED_OFF() PORTB &= ~_BV(2)
- #define BUTTON (!(PINB & _BV(1)))
-
-
- volatile uint8_t Stat; /* Battery status: 0=empty, 1=low, 2=ok */
-
-
-
- ISR(INT0_vect) /* Wake-up from sleep mode */
- {
- GIMSK = 0; /* Disable INT0 (on button down) */
- }
-
-
-
- ISR(TIM0_COMPA_vect) /* 100Hz timer interrupt */
- {
- uint8_t n;
- static uint8_t blink;
-
-
- n = Stat;
- if (n == 2 || (n == 1 && (++blink & 32))) {
- LED_ON();
- } else {
- LED_OFF();
- }
- }
-
-
-
- static void delay_10ms (void)
- {
- set_sleep_mode(SLEEP_MODE_IDLE); /* Set Idle mode */
- sleep_mode();
- }
-
-
-
- static uint8_t test_button (void) /* b0:status, b1:trigger */
- {
- static uint8_t btn;
-
-
- if (BUTTON) {
- if (btn < HOLD_TIME) {
- if (++btn == HOLD_TIME) return 3;
- }
- return 1;
- } else {
- btn = 0;
- return 0;
- }
- }
-
-
- static void power_off_mode (void)
- {
- uint8_t n;
-
-
- Stat = 0; /* LED off */
- for (;;) {
- /* LED off, power off, headphone off */
- LED_OFF();
- OUT_DISABLE();
- POWER_DISABLE();
-
- /* Wait for button released (100ms) */
- for (n = 10; n; n--) {
- delay_10ms();
- if (test_button() != 0) n = 10;
- }
-
- /* Sleep and resume */
- TIMSK0 = 0; /* Disable timer interrupt */
- cli(); /* Disable interrupts for critical operations */
- GIMSK = _BV(INT0); /* Enable button down interrupt (INT0) */
- set_sleep_mode(SLEEP_MODE_PWR_DOWN); /* Set Power-Down mode*/
- sleep_enable(); /* Enable sleep mode */
- sleep_bod_disable(); /* Disable BOD in sleep mode */
- sei(); /* Eneble interrupt to wake-up */
- sleep_cpu(); /* Enter sleep mode */
-
- /*------ Sleeping ------*/
-
- sleep_disable(); /* Disable sleep mode */
- TIMSK0 = _BV(OCIE0A); /* Enable timer interrupt */
-
- /* Press and hold the button for HOLD_TIME to start */
- do {
- delay_10ms();
- n = test_button();
- } while (n == 1);
- if (n == 3) break; /* Exit if the button was held for HOLD_TIME, or stay power off */
- }
-
- POWER_ENABLE(); /* Enable DC-DC converter */
- Stat = 2; /* LED on */
- for (n = 30; n; n--) delay_10ms(); /* 300ms */
- OUT_ENABLE(); /* Ebable headphone output */
- }
-
-
-
- static uint8_t battery_level (void) /* Test battery status (2=ok, 1=low, 0=empty) */
- {
- uint16_t adc;
-
-
- ADMUX = _BV(REFS0) | 2; /* Select ADC2 with Vref = internal 1.1V */
- ADCSRA = _BV(ADEN)|_BV(ADSC)|_BV(ADIF)|0b011; /* Enable ADC and start conversion */
- while (!(ADCSRA & _BV(ADIF))) ; /* Wait for EOC */
- adc = ADC;
- ADCSRA = 0; /* Disable ADC */
-
- if (adc < VOLT2AD(BLV_OFF)) return 0; /* Empty? */
- if (adc < VOLT2AD(BLV_LOW)) return 1; /* Low? */
- return 2;
- }
-
-
-
- int main (void)
- {
- uint8_t btct, btlv;
-
-
- /* Initialize GPIOs */
- PORTB = 0b00000; /* Initialize PORTB as: */
- DDRB = 0b01101; /* BP4=Vbat, PB3=Power, PB2=LED, PB1=Button, BP0=OutEnable */
- DIDR0 = 0b10000; /* Disable digital input on PB4 */
-
- /* Enable TC0 in 100 Hz interval timer */
- OCR0A = F_CPU / 256 / 100 - 1;
- TCCR0A = _BV(WGM01);
- TCCR0B = 0b100;
- TIMSK0 = _BV(OCIE0A);
-
- sei();
-
- for (;;) {
- power_off_mode(); /* Power-off and wake-up */
-
- btct = btlv = 0;
- for (;;) {
- delay_10ms();
- if (test_button() == 3) break; /* Test button */
- btlv += battery_level(); /* Test battery level */
- if (++btct == 50) { /* 50 times averaging */
- if (btlv < 25) break; /* Battery empty? */
- Stat = btlv < 75 ? 1 : 2; /* Battery ok or low? */
- btct = btlv = 0;
- }
- }
- }
- }
JSON Crack - Crack your data into pieces
从效果来看非常不错,大大方便数据内容查看
DRIVE Thor Unites AV and Cockpit on a Single SoC | NVIDIA Blog
NVIDIA Drops DRIVE Atlan SoC, Introduces 2 PFLOPS DRIVE Thor for 2025 Autos
在上周举行的全球开发者大会上,除了RTX4090显卡,就是这个了。
雷神Thor搭载了770亿晶体管,在算力上达到了2000TFLOPs(1TOPS代表每秒能进行10^12次操作),Thor的算力是特斯拉FSD芯片的14倍。
Atlan方案已经放弃
该套件包括两个飞行时间测距传感器,彼此相距23厘米。此方案专为电动升降门应用而设计,可通过预定义的脚部移动来打开/关闭行李箱
对应的官方文档里面有详细说明
F´ A Flight Software and Embedded Systems Framework | F´
fprime是一个软件框架,用于快速开发和部署嵌入式系统和航天应用。最初是由NASA的喷气推进实验室开发的开源软件,已成功被用于多种太空应用。它已被用于但不限于立方体卫星,小型卫星,仪器。
相关的资源链接全部提供了
使用SiC版收发器,可以有效降低信号振铃问题,效果如下:
一般将CANFD的数据通信阶段速度提到8Msps问题大不
Designing with CAN signal improvement capability (SIC) transceivers | TI.com Video
Releases · ARM-software/CMSIS-DSP · GitHub
最近更新频繁了,基本上半个月就更新一次。针对计算图,增加了Event Recorder支持
规格:
效果:
还有个对应的POE和无线扩展板
TI Reference Designs Library
Reference Designs | Design Center | Analog Devices
https://www.maximintegrated.com/ ... -design-center.html
Reference Designs | Microchip Technology
之前分享了TI,ADI和美信,这次加入Microchip
数千个完整设计案例供大家参考。
TI:
美信:
ADI:
Microchip
Replacing a 40 Pin COB With a 44 Pin QFP : 3 Steps (with Pictures) - Instructables
搞牛屎芯片替换的玩家非常多,其中尤其以替换万用表的玩家,因为三位半常用的芯片是7106/7107,四位半常用的是7129/7135
这个网上的一位玩家替换效果:
磨掉COB环氧树脂,使用这种封装的优势是成本低
换上新芯片的效果:
三位半HT7106价格在3-6块,四位半的6-9块,价格还算非常给力。
像TI,瑞萨和美信,也都有相应系列的产品。
做的也非常不错
他们还有一个选型框图做的也非常好
下面的小方框可以方便的查找
兆易创新发布GD32A503系列首款车规级MCU | 兆易创新 – GigaDevice
基于Cortex-M33内核,40nm车规级制程和高速嵌入式闪存eFlash技术,配备384KB Flash和48KB SRAM,另有专用代码空间可配置为64KB DFlash/4KB EEPROM
另外他们的TUV安全认证应该还在进行中,
大湾区首张!极海通过TÜV莱茵ISO 26262功能安全管理体系认证
这个还是很给力的,直接上证书
(1)更新2.1.9版本所需功能。
(2)RTOS Trace初步完成uCOS-III,增加ThreadX的Trace中
uCOS-III初步的界面效果,最终效果略有不同,部分信息会在控件上刷新
这两天增加ThreadX的关键信息Trace,能正常检索了,还要继续改进。
(3)H7-TOOL的截图功能关键部分都已经打通了,下面是截图SDRAM显存数据效果
用户仅需接上SWD接口即可,无需用户嵌入代码到目标,填入显存地址即可。
而截图RA8875屏,太不容易了,坑有点多,因为需要通过SWD接口控制RA8875进入读像素操作,最后也是最关键的一步就是读取是显存地址自增模式,这个坑太多了,比写显存地址自增麻烦很多,花了很长时间才搞定
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。