RK3588-UART-最资讯
前言
专栏总目录本文主要讲解如何关于RK3588开发板UART的使用和调试方法,包括UART作为普通串口和控制台两种不同使用场景一. 功能特点
RockchipUART (Universal Asynchronous Receiver/Transmitter) 基于16550A串口标准,完整模块支持以下功能:
支持5、6、7、8 bits数据位。支持1、1.5、2 bits停止位。支持奇校验和偶校验,不支持mark校验和space校验。支持接收FIFO和发送FIFO,一般为32字节或者64字节。支持最高4M波特率,实际支持波特率需要芯片时钟分频策略配合。支持中断传输模式和DMA传输模式。 支持硬件自动流控,RTS+CTS。二、代码位置
在Linuxkernel 中,使用8250串口通用驱动,以下为主要驱动文件:
(资料图片仅供参考)
drivers/tty/serial/8250/8250_core.c # 8250串口驱动核心
drivers/tty/serial/8250/8250_dw.c # Synopsis DesignWare 8250串口驱动
drivers/tty/serial/8250/8250_dma.c # 8250串口DMA驱动
drivers/tty/serial/8250/8250_port.c # 8250串口端口操作
drivers/tty/serial/8250/8250_early.c # 8250串口early console驱动
SDK中提供的UART默认配置已经使用了8250驱动我们就不需要修改
三、硬件原理图
串口功能的硬件上比较简单,这是只附上调试串口的原理图
四、设备树配置
rk平台的设备树修改路径都是在kernel\\arch\\arm64\\boot\\dts\\rockchip下面,具体哪个文件根据对应开发板来决定,通常描述设备硬件配置在rkxxxx.dtsi中,比如在rk3588s.dtsi中:
uart2: serial@feb50000 {compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart";reg = < 0x0 0xfeb50000 0x0 0x100 >;interrupts = < GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH >;clocks = < &cru SCLK_UART2 >, < &cru PCLK_UART2 >;clock-names = "baudclk", "apb_pclk";reg-shift = < 2 >;reg-io-width = < 4 >;dmas = < &dmac0 10 >, < &dmac0 11 >;pinctrl-names = "default";pinctrl-0 = < &uart2m1_xfer >;status = "disabled";};
4.1作为普通串口
假入我们想使用w3开发板上40PIN上的uart7
我们在dts可以使用如下配置打开
&uart7 {status = "okay";pinctrl-names = "default";pinctrl-0 = < &uart7m1_xfer >;};
4.2作为调试串口
Rockchip UART作为控制台,使用fiq_debugger流程。
在dts中fiq_debugger节点配置如下。由于fiq_debugger和普通串口互斥,在使能fiq_debugger节点后必须禁用对应的普通串口uart节点。
chosen: chosen {bootargs = "earlycon=uart8250,mmio32,0xfe660000 console=ttyFIQ0";};fiq-debugger {compatible = "rockchip,fiq-debugger";rockchip,serial-id = < 2 >;rockchip,wake-irq = < 0 >;/* If enable uart uses irq insteadof fiq */rockchip,irq-mode-enable = < 1 >;rockchip,baudrate = < 1500000 >; /* Only 115200 and 1500000 */interrupts = < GIC_SPI 252 IRQ_TYPE_LEVEL_LOW >;pinctrl-names = "default";pinctrl-0 = < &uart2m0_xfer >;status = "okay";};&uart2 {status = "disabled";};
rockchip,serial-id:使用的UART编号。修改serial-id到不同UART,fiq_debugger设备也会注册成ttyFIQ0设备。 rockchip,irq-mode-enable:配置为1使用irq中断,配置为0使用fiq中断。interrupts:配置的辅助中断,保持默认即可。pinctrl-0:使用的串口引脚rockchip,baudrate:波特率配置五、串口相关问题
5.1设备注册
普通串口设备将会根据dts中的aliase来对串口进行编号,对应注册成ttySx设备。注册的节点为/dev/ttyS4,命名规则是通过dts中的aliases来的。
aliases {serial0 = &uart0;serial1 = &uart1;serial2 = &uart2;serial3 = &uart3;}
对应uart0注册为ttyS0,uart0注册为ttyS1,如果需要把uart3注册成ttyS1,可以进行以下修改
serial1 = &uart3; serial3 = &uart1;
5.2控制台打印相关
Rockchip UART打印通常包括DDR阶段、Miniloader阶段、TF-A (Trusted Firmware-A)阶段、OP-TEE阶段、Uboot阶段和Kernel阶段,我们平时主要关注的是uboot阶段和kernel阶段的打印,在这两个阶段我们可以尝试关闭所有打印或切换所有打印到其他UART,RK平台默认的调试串口是uart2_m0这一组引脚,假如现在我将打印换成其他串口,可以尝试以下做法。
5.2.1DDR Loader修改方法
DDR Loader中关闭或切换打印,需要修改DDR Loader中的UART打印配置,修改文件rkbin/tools/ddrbin_param.txt中的以下参数:
uart id= # UART控制器id,配置为0xf为关闭打印
uart iomux= # 复用的IOMUX引脚 uart
baudrate= # 115200 or 1500000
修改完成后,使用以下命令重新生成ddr.bin固件。
./ddrbin_tool ddrbin_param.txt rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.09.bin
5.2.2Uboot修改方法
Uboot中关闭打印,需要在menuconfig中,打开配CONFIG_DISABLE_CONSOLE,保存到.config文件
Uboot中切换打印,由传参机制决定,不需要进行额外修改。uboot解析传参机制相关代码在arch/arm/mach-rockchip/board.c的board_init_f_init_serial()函数中。
5.2.3kernel修改方法
去掉打印需要在menuconfig中,关闭配置CONFIG_SERIAL_8250_CONSOLE。
Device Drivers --->
Character devices --->
Serial drivers --->
[ ]Console on 8250/16550 and compatible serial port
在dts配置中找到类似以下内容,并去掉UART基地址和console相关配置参数
chosen: chosen {bootargs = "earlycon=uart8250,mmio32,0xfeb50000 console=ttyFIQ0 irqchip.gicv3_pseudo_nmi=0 root=PARTUUID=614e0000-0000 rw rootwait";};
将0xfeb50000 console=ttyFIQ0 去掉,然后找到fiq-debugger节点,修改serial-id为0xffffffff,去掉UART引脚复用相关配置。注意,需要保持fiqdebugger节点使能,保持fiq-debugger流程系统才能正常启动
fiq_debugger: fiq-debugger {compatible = "rockchip,fiq-debugger";rockchip,serial-id = < 0xffffffff >;rockchip,wake-irq = < 0 >;/* If enable uart uses irq instead of fiq */rockchip,irq-mode-enable = < 1 >;rockchip,baudrate = < 1500000 >; /* Only 115200 and 1500000 */interrupts = < GIC_SPI 423 IRQ_TYPE_LEVEL_LOW >;status = "okay";};
切换打印串口例如将Kernel打印从UART2切换到UART3,在dts配置中找到类似以下内容,将UART基地址由UART2改为UART3.
bootargs = "earlycon=uart8250,mmio32,0xfe670000 console=ttyFIQ0";
0xfe670000是UART3基地址,然后找到fiq-debugger节点,修改serial-id为3,修改UART3引脚复用配置pinctrl-0 = <&uart3m0_xfer>。注意,同时需要将切换为打印串口的UART3作为普通串口的节点禁用。
六、串口测试
在开发板上跑一套应用程序,可以发送数据,可以接收数据,测试方法可以短接TX_RX
#include < stdio.h >#include < stdlib.h >#include < errno.h >#include < unistd.h >#include < fcntl.h >#include < string.h >#include < termio.h >#include < time.h >#include < pthread.h >int read_data(int fd, void *buf, int len);int write_data(int fd, void *buf, int len);int setup_port(int fd, int baud, int databits, int parity, int stopbits);void print_usage(char *program_name);pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;pthread_cond_t data_ready = PTHREAD_COND_INITIALIZER;int data_available = 0;void *read_thread(void *arg) { int fd = *(int *)arg; char buffer[1024]; // 存储读取的数据 while (1) { int bytes_read = read_data(fd, buffer, sizeof(buffer)); if (bytes_read > 0) { printf("Read Thread: Read %d bytes: %s\\n", bytes_read, buffer); } else { // 处理读取错误或设备关闭的情况 break; } } pthread_exit(NULL);}void *write_thread(void *arg) { int fd = *(int *)arg;char input[1024]; // 存储用户输入的数据 while (1) { printf("Enter data to write (or "q" to quit): "); fgets(input, sizeof(input), stdin); if (strcmp(input, "q\\n") == 0 || strcmp(input, "Q\\n") == 0) { // 用户输入 "q" 或 "Q",退出循环 break; } int len = strlen(input); int bytes_written = write_data(fd, input, len); if (bytes_written > 0) { printf("Write Thread: Wrote %d bytes: %s\\n", bytes_written, input); } } pthread_exit(NULL);}int main(int argc, char *argv[]) //./a.out /dev/ttyS4 115200 8 0 1{ int fd; int baud; int len; int count; int i; int databits; int stopbits; int parity; if (argc != 6) { print_usage(argv[0]); return 1; } baud = atoi(argv[2]); if ((baud < 0) || (baud > 921600)) { fprintf(stderr, "Invalid baudrate!\\n"); return 1; } databits = atoi(argv[3]); if ((databits < 5) || (databits > 8)) { fprintf(stderr, "Invalid databits!\\n"); return 1; } parity = atoi(argv[4]); if ((parity < 0) || (parity > 2)) { fprintf(stderr, "Invalid parity!\\n"); return 1; } stopbits = atoi(argv[5]); if ((stopbits < 1) || (stopbits > 2)) { fprintf(stderr, "Invalid stopbits!\\n"); return 1; } fd = open(argv[1], O_RDWR, 0); if (fd < 0) { fprintf(stderr, "open < %s > error %s\\n", argv[1], strerror(errno)); return 1; } if (setup_port(fd, baud, databits, parity, stopbits)) { fprintf(stderr, "setup_port error %s\\n", strerror(errno)); close(fd); return 1; }pthread_t read_tid, write_tid; int ret; // 创建读取线程 ret = pthread_create(&read_tid, NULL, read_thread, &fd); if (ret != 0) { fprintf(stderr, "Failed to create read thread\\n"); return 1; } // 创建写入线程 ret = pthread_create(&write_tid, NULL, write_thread, &fd); if (ret != 0) { fprintf(stderr, "Failed to create write thread\\n"); return 1; } // 等待读取线程和写入线程结束 pthread_join(read_tid, NULL); pthread_join(write_tid, NULL); close(fd); return 0;}static int baudflag_arr[] = { B921600, B460800, B230400, B115200, B57600, B38400, B19200, B9600, B4800, B2400, B1800, B1200, B600, B300, B150, B110, B75, B50};static int speed_arr[] = { 921600, 460800, 230400, 115200, 57600, 38400, 19200, 9600, 4800, 2400, 1800, 1200, 600, 300, 150, 110, 75, 50};int speed_to_flag(int speed){ int i; for (i = 0; i < sizeof(speed_arr)/sizeof(int); i++) { if (speed == speed_arr[i]) { return baudflag_arr[i]; } } fprintf(stderr, "Unsupported baudrate, use 9600 instead!\\n"); return B9600;}static struct termio oterm_attr;int setup_port(int fd, int baud, int databits, int parity, int stopbits){ struct termio term_attr; if (ioctl(fd, TCGETA, &term_attr) < 0) { return -1; } memcpy(&oterm_attr, &term_attr, sizeof(struct termio)); term_attr.c_iflag &= ~(INLCR | IGNCR | ICRNL | ISTRIP); term_attr.c_oflag &= ~(OPOST | ONLCR | OCRNL); term_attr.c_lflag &= ~(ISIG | ECHO | ICANON | NOFLSH); term_attr.c_cflag &= ~CBAUD; term_attr.c_cflag |= CREAD | speed_to_flag(baud); term_attr.c_cflag &= ~(CSIZE); switch (databits) { case 5: term_attr.c_cflag |= CS5; break; case 6: term_attr.c_cflag |= CS6; break; case 7: term_attr.c_cflag |= CS7; break; case 8: default: term_attr.c_cflag |= CS8; break; } switch (parity) { case 1: term_attr.c_cflag |= (PARENB | PARODD); break; case 2: term_attr.c_cflag |= PARENB; term_attr.c_cflag &= ~(PARODD); break; case 0: default: term_attr.c_cflag &= ~(PARENB); break; } switch (stopbits) { case 2: term_attr.c_cflag |= CSTOPB; break; case 1: default: term_attr.c_cflag &= ~CSTOPB; break; } term_attr.c_cc[VMIN] = 1; term_attr.c_cc[VTIME] = 0; if (ioctl(fd, TCSETAW, &term_attr) < 0) { return -1; } if (ioctl(fd, TCFLSH, 2) < 0) { return -1; } return 0;} int read_data(int fd, void *buf, int len){ int count; int ret; ret = 0; count = 0; //while (len > 0) { ret = read(fd, (char*)buf + count, len); if (ret < 1) { fprintf(stderr, "Read error %s\\n", strerror(errno)); //break; } count += ret; len = len - ret; //} *((char*)buf + count) = 0; return count;} int write_data(int fd, void *buf, int len){ int count; int ret; ret = 0; count = 0; while (len > 0) { ret = write(fd, (char*)buf + count, len); if (ret < 1) { fprintf(stderr, "Write error %s\\n", strerror(errno)); break; } count += ret; len = len - ret; } return count;}void print_usage(char *program_name){ fprintf(stderr, "*************************************\\n" " A Simple Serial Port Test Utility\\n" "*************************************\\n\\n" "Usage:\\n %s < device > < baud > < databits > < parity > < stopbits > \\n" " databits: 5, 6, 7, 8\\n" " parity: 0(None), 1(Odd), 2(Even)\\n" " stopbits: 1, 2\\n" "Example:\\n %s /dev/ttyS4 115200 8 0 1\\n\\n", program_name, program_name );}
运行效果如下:
审核编辑:汤梓红
标签:
相关推荐
-
RK3588-UART-最资讯
本文主要讲解如何关于RK3588开发板UART的使用和调试方法,包括UART作为 -
旱碱麦成“名片”迎来丰收 盐碱地特色农业开出“增收花”_每日热门
眼下,在河北省沧州渤海新区黄骅市,旱碱麦迎来了收获期。 -
1小时40分用数字怎么表达 4小时50分用数字怎么表示
5 3小时。做法:1小时=60分钟,40分钟=2 3小时,所以1小时40分钟=5 3小 -
热点评!“三夏”机收快速推进
眼下,小麦机收正由南到北快速推进。截至6月9日17时,全国已收获冬小麦 -
天天视点!非遗微动画丨穿越二十四节气 共赏人间好时节
春雨惊春清谷天,夏满芒夏暑相连。秋处露秋寒霜降,冬雪雪冬小大寒。二 -
跨越山海的“寻亲路” 男子走散26年后与家人团聚 热点在线
5月30日,在外流浪漂泊了26年的40岁福州籍男子,在宁夏民政、公安等部 -
多方聚力确保夏粮应收尽收
麦熟一晌,贵在争抢。5月下旬,河南小麦成熟期遇上连阴雨,夏收遭遇意 -
喜悦“溢出屏幕”!多地高考收官 考生与亲友庆祝
中新社记者杨华峰摄6月9日,全国部分地区高考收官,考生步出考场与亲友 -
高考落幕—— 焦点讯息
昨天下午18时15分,随着最后一科考试交卷铃声响起,2023年全国高考正式 -
广东省汕尾市政府原副市长郑俊雄接受审查调查_看点
据广东省纪委监委消息:广东省汕尾市政府原副市长郑俊雄涉嫌严重违纪违 -
国米欧冠决赛之路:战绩7胜3平2负,半决赛双杀米兰|当前短讯
直播吧6月10日讯北京时间明天凌晨,国米将在欧冠决赛中对阵曼城。在本 -
被低估的智能门锁,为何成为智能家居顶流?
“智能门锁,一个你用过就回不去的东西。”虽然上面这句话听起来很... -
被狼咬死的羊肉能不能吃?|世界快播报
不能吃!!!曾经看过一篇报道关于狂犬病的:一位农民伯伯就是因为吃了 -
华南等地暴雨如注 长江中下游高温增多闷热加剧
本周末,中东部地区将继续延续雨-高温-雨的天气格局,华北、黄淮、华南 -
公司要求员工分摊电费?法院判了
近日,广东省珠海市香洲法院公布一起劳动争议案件。2021年6月,汤某入 -
广汽埃安副总经理称为材料厂打长工不现实 “主机厂是你永远得罪不起的”
广汽埃安副总经理称为材料厂打长工不现实“主机厂是你永远得罪不起的” -
国铁集团6月10日起在12306网站试行在线选铺服务
国铁集团客运部负责人介绍,铁路部门试行在线选铺服务,是贯彻落实以人 -
2023年高考“交卷” 福建省实现平安高考
今起进入改卷时间铃声响起,交卷!昨天18时15分,随着生物学科考试结束 -
环球微速讯:“深海发现之旅”在国家海洋博物馆启动
本次活动旨在通过丰富多彩的活动加强市民对于深海大洋的认识。 -
新加坡羽毛球公开赛:石宇奇无缘男单半决赛-环球时快讯
6月9日,石宇奇在比赛中回球。 -
世界观热点:首钢协力公司第十七届职工技能运动会开幕
为打牢首钢矿业公司高质量发展基础增强人才支撑,提升相关产业转型发展 -
2023年国家医保目录调整征求意见:6月底前获批药物均可参与,谈判最早9月
2023年国家医保目录调整工作要来了,今年6月30日前获批的药物都有机会 -
在铁路12306买卧铺票也可以在线选铺位了!手把手教你怎么操作
在铁路12306买卧铺票也可以在线选铺位了!手把手教你怎么操作---记者从 -
特朗普再次被起诉,转头又去打高尔夫,网友:他和高尔夫是真爱
特朗普再次被起诉,转头又去打高尔夫,网友:他和高尔夫是真爱---特朗 -
世界视点!暗黑4高效率获得攻击类威能方法介绍
暗黑4高效率获得攻击类威能方法是很多暗黑玩家都关注的,暗黑4是最新才 -
世界观热点:【原】5月9星期一
我想好啦!暂定以后在这里写写我身边的日常琐事,浅浅地记录我的一 -
最新:“文根”何以“深种”?看文博会如何寻找岭南新坐标
眼下,岭南地区渐入龙舟赛季。珠江水网密布,孕育出各具地方特色的龙舟 -
新华全媒+|夜幕下,一个群体带动城市消费新热潮
海报制作:方金洋天津6月9日电(记者郭方达宋瑞)放上置物架、挂上... -
【天天时快讯】国宝画重点丨上天入海,到处“出差”!这件宝贝可不得了
2023年6月10日是“文化和自然遗产日”今年的主场城市活动在四川成都... -
环球焦点!苍穹巨灵·内蒙古篇
莽莽苍苍的林海雄浑壮阔的沙漠奔流不息的黄河水一望无垠的大草原…... -
天天报道:各地税务部门不断优化服务 前5个月新办涉税经营主体643.5万户
消息:随着减税降费、优化营商环境等一系列政策红利的持续释放,我国经 -
世界播报:击败阿尔卡拉斯,德约科维奇距大满贯第23冠仅一步之遥
本场比赛前两盘,两位世界男子网坛的顶级高手为观众们献上了多个精彩绝 -
小德又遭法网观众嘘声!意外进决赛也是错?小德:我不在乎嘘声!
这是两人首度在大满贯赛事中交手,人们对于这场对决充满期待。阿尔卡拉 -
扎克伯格评苹果MR新品:价格是自家产品的7倍 但没看到什么突破 全球头条
但扎克伯格认为,VisionPro与Quest3的不同恰恰反应两家公司在价值观和 -
热消息:Cortex-A7处理器的功能特性介绍
Cortex-A7处理器是一种由ARM公司推出的基于ARMv7-A架构的高能效处理器 -
居理买房暴雷!前员工称“欠薪千万元,丈母娘顶替法人”
居理买房暴雷!前员工称“欠薪千万元,丈母娘顶替法人” -
樊纲:今年5%以上经济增长可以期待-天天观天下
樊纲:今年5%以上经济增长可以期待 -
小孩左下腹疼痛是什么原因_右侧下腹疼痛是什么原因-环球热点评
1、右下腹疼痛的原因有很多,常见的有以下几种:一是泌尿系统疾病,如 -
哪些人容易低血糖 知乎_哪些人容易低血糖
1、体质偏瘦的老人和糖尿病病史较长的患者容易发生低血糖。2、老年人和 -
国铁集团今起在12306网站(含App)试行在线选铺服务
据中国铁路官博消息,6月10日,国铁集团将在12306网站试行在线选铺服务 -
真金不怕火炼!掘金3-1热火,NBA总冠军只差一步 天天时快讯
真金不怕火炼!掘金3-1热火,NBA总冠军只差一步 -
中方驳斥:无中生有、信口雌黄、恶意诋毁! 当前头条
驻英国使馆发言人就英国首相苏纳克涉华错误言论答记者问问:据报道,6 -
车间探秘!怎样做到53秒下线一台车?| 高质量发展调研行・广东站
我们每天看到的、乘坐的汽车,究竟是怎样生产和装配的?53秒下线一台车 -
我,“绝版”毕业生,专业读着读着就没了|天天速读
我,“绝版”毕业生,专业读着读着就没了 -
美媒:越南热浪与电力短缺持续 三星、鸿海和立讯精密工厂遭冲击_全球快消息
美媒:越南热浪与电力短缺持续三星、鸿海和立讯精密工厂遭冲击 -
世界球精选!脚气用盐水还是醋水洗脚好_脚气用盐水泡脚有用吗
1、用盐水泡脚治脚气效果不大,基本没有治疗作用。脚气是由真菌感染引 -
早上起床喝淡盐水好吗_早上喝淡盐水好吗
1、病情分析:早上喝淡盐水就好。2、因为空腹喝一杯淡盐水可以清洁肠胃 -
考后心理波动期来了?几个方法帮考生收心
长期的备考和紧张的高考之后,考生的各种心理需求在考试后一段时间会出 -
【世界速看料】国铁集团6月10日起在12306网站试行在线选铺服务
海外网北京6月10日电(记者严冰)从中国国家铁路集团有限公司(下称“ -
每日短讯:美国旧金山毒品泛滥、暴力犯罪猖獗 市民称正在目睹西方文明崩溃
美国社会活动家拍摄的旧金山市街头情况(社交媒体截图)海外网6月10日 -
助力建设世界级生物医药产业集群,浦东打出系列医产融合“组合拳”
6月9日上午,浦东新区举行医产融合促进生物医药产业高质量发展发布会, -
中方驳斥:无中生有、信口雌黄、恶意诋毁!
驻英国使馆发言人就英国首相苏纳克涉华错误言论答记者问问:据报道,6 -
国内首条“丝路海运”电商快线开通首年进出口破100亿 全球热资讯
6月10日,在厦门东渡海天码头,“海丰马尼拉”号货轮正在开展作业,... -
【全球聚看点】外资净买超16亿!A股近4000亿白马股火了,银行股又被狂买
外资净买超16亿!A股近4000亿白马股火了,银行股又被狂买 -
专访青岛银行董事长景在伦:以绿色金融为着力点,全力支持山东高质量发展
专访青岛银行董事长景在伦:以绿色金融为着力点,全力支持山东高质量发 -
谁来安置天津沉降小区居民 全球报资讯
谁来安置天津沉降小区居民 -
警犬出动!太原公安开展物流缉毒专项行动(图) 环球微资讯
近日,在太原市某物流基地,警犬大海和多多经过散放、适应场地、调引等 -
【世界新要闻】11度红酒与14度红酒的区别?
11度和14度的区别只是酒精含量的差别,不影响红酒的口感、风格等。干红 -
21款思域保养灯手动消除教程(19款思域保养灯手动消除方法是什么?)
19款思域(参数|询价)保养灯手动消除方法是:打开点火开关,一手按住复 -
每日聚焦:证监会重磅发布!投顾“新规”来袭,解决“重投轻顾”问题,来看五大看点
证监会重磅发布!投顾“新规”来袭,解决“重投轻顾”问题,来看五... -
深圳文博会上山西11市分别举办文旅宣传推介活动
展示文旅精品推介文旅项目举办文化活动我省11市文旅宣传推介活动亮相深 -
环球观察:2023高考今日落幕,多地公布志愿填报时间
10日,2023全国高考将全部落幕,目前,全国多地陆续公布志愿填报时间。 -
全球通讯!充电桩有望一统北美:特斯拉大涨超6%,已连涨11天,市值猛增1.49万亿元!
充电桩有望一统北美:特斯拉大涨超6%,已连涨11天,市值猛增1 49万亿元! -
降费在即!公募基金降费酿变,将采取“新老划断”,最快或于一个月内出台-热推荐
降费在即!公募基金降费酿变,将采取“新老划断”,最快或于一个月... -
近3900亿解禁洪流来袭!20cm涨停热门股迎股东减持+限售股解禁 最新
近3900亿解禁洪流来袭!20cm涨停热门股迎股东减持+限售股解禁 -
大解难出实招求实效——华容县医保局开展“大调研 大解难 大创新 大提升”主题活动报道之二|环球热消息
大解难出实招求实效——华容县医保局开展“大调研大解难大创新大提... -
世界动态:守护这份“最美”遗产——湖南保护自然遗产成就斐然
新湖南,主流新媒体,移动新门户。-分享自@新湖南 -
每日速递:2023年06月10日全国各省市猪白条肉价格行情走势
2023年06月10日全国各省市猪白条肉价格行情走势单位:元 公斤河北省临 -
空姐超重立即停飞?企业规定不能如此任性
原标题:空姐超重立即停飞?企业规定不能如此任性近日,海南航空发布通 -
英国《金融时报》:日本的供应链窘境 天天观天下
英国《金融时报》6月7日文章,原题:日本的供应链窘境作为一个严重依赖 -
热点评!对华光伏板关税战,印度准备认输?
【环球时报报道记者苑基荣】面对超九成光伏板进口自中国的现实,印度的 -
每日精选:盯着中国产业链优势,谁在炒作新能源版“对华依赖”?
【环球时报记者倪浩环球时报驻德国、韩国特约记者青木张静环球时报特约 -
联合国安理会就马里维和人员遭袭发表声明 全球今热点
当地时间6月9日,联合国安理会就马里维和人员遇袭身亡发表声明。当天, -
中国驻英使馆发言人就英国首相苏纳克涉华错误言论答记者问-全球信息
记者问:据报道,6月8日,英国首相苏纳克在访问美国时称,中国和俄罗斯 -
【人人讲安全 个个会应急】我省开展危化品重大危险源企业专项检查
为持续强化危险化学品重大危险源安全风险管控,精准防控重大安全风险, -
赔光光的瑞信AT1债券持有人开辟“新战场”:找券商求偿_世界即时看
赔光光的瑞信AT1债券持有人开辟“新战场”:找券商求偿 -
法国政府强迫食品公司降价:不遵守就制裁
法国政府强迫食品公司降价:不遵守就制裁 -
逢低“补货”战略油储:美国能源部完成300万桶招标后又要买300万桶
逢低“补货”战略油储:美国能源部完成300万桶招标后又要买300万桶 -
环球速讯:经济日报:如何看待一线城市的“人口负增长信号”
经济日报:如何看待一线城市的“人口负增长信号” -
美股财报出现矛盾信号,风险资产的重要支撑会失去动能吗?
美股财报出现矛盾信号,风险资产的重要支撑会失去动能吗? -
美记:太阳截止日前曾与森林狼探讨拉塞尔交易 还有意纳兹-里德
据雅虎记者JakeFischer报道,消息人士透露,在今年交易截止日前,太阳 -
即时焦点:迪马济奥:马尔蒂尼、马萨拉、皮奥利共进午餐,友善地告别
据迪马济奥透露,马尔蒂尼、马萨拉和米兰主帅皮奥利在意大利聚餐相互告 -
环球焦点!晋宁区后期扶持项目:兴乡村产业 助移民增收
6月7日是晋宁区六街镇龙王塘村蔬菜交易市场新开业的第一天,龙王塘村村 -
【生态关注】女子民兵治沙50载!她们让陕西的绿色版图向北推进400公里_动态
点击上方蓝字关注“中国小康网”“洒尽全身千滴汗,浇灌荒沙一片绿... -
国内物价继续平稳运行(锐财经)-全球速讯
国家统计局6月9日发布数据显示,5月份,全国居民消费价格指数(CPI)同 -
热点在线丨“在这里感受中华文明的厚重与鲜活”
香港故宫文化博物馆外景。记者李钢摄游客在香港故宫文化博物馆参观。新 -
加紧布局,美谋求“北极霸权”(环球热点)
据外媒报道,6月9日,由挪威、瑞典和芬兰共同主办的“北极挑战—202... -
欧盟再次向美数字巨头“亮剑”
近日,欧盟再次向美国数字巨头“亮剑”。据外媒报道,继“脸书”母... -
金秋第 9代Apple Watch 值得买吗?苹果透露了一个小功能-全球热推荐
苹果开始关注视力健康,尤其是近视眼。精致有料的科技报道-shenzhenwar -
【长测】第一次用上vivo旗舰机 就快秒单反了?-头条
距离使用vivoX90Pro+这款旗舰手机已经有一个多月的时间了,先来聊聊为 -
老师您好ppt课件-天天报道
1、打开ppt文件需要安装MicrosoftOfficePowerPoint办公软件,下载MicrosoftOff -
win7 oem win7 oem激活工具)
(一)Win7OEM的含义Win7OEM是操作系统销售的一种,是指针对操作系统组 -
强者恒强,江铃福特全顺何以持续领跑轻客市场?
如果想购买一辆轻客车型,俯瞰全球汽车市场,相信江铃福特全顺定会... -
全球球精选!“十年为期,不要指望速成”,投资人眼里的未来机会在哪里?
“十年为期,不要指望速成”,投资人眼里的未来机会在哪里? -
美银:美国科技股8周来首现资金外流 AI热潮正在停滞
美银:美国科技股8周来首现资金外流AI热潮正在停滞 -
昭衍新药(06127)拟发行资本化股份_环球信息
智通财经APP讯,昭衍新药(06127)发布公告,该公司将通过资本化储备按现 -
突发!30多年股龄栽了!被罚2.2亿元
证监会网站最新披露的一则行政处罚决定书显示,证监会对任良成操纵证券 -
天天快消息!美西方通过资源侵占 加剧全球贫富差距
西方国家通过占领资源,进行对发展中国家的剥削,导致全球贫富差距的加 -
司法部发布2023年法考公告:6月15日起报名,9月16日和17日客观题考试
记者从司法部获悉,6月9日司法部发布2023年国家统一法律职业资格考试公 -
与美国渐行渐远 沙特加快战略自主步伐-世界速递
利雅得6月9日电美国国务卿布林肯8日结束对沙特阿拉伯的访问。近一个月