编辑
2025-03-13
其它
00

解决 Ubuntu 安装过程中黑屏卡死的记录

问题背景

在尝试安装 Ubuntu 系统时,选择 "Try or Install Ubuntu" 选项后立即出现黑屏卡死现象。该问题可能与显卡驱动兼容性相关,以下是完整的解决过程记录。

编辑
2025-03-02
嵌入式
00

为GPIO单独创建一个类: GPIO.h

C++
#pragma once #ifndef __GPIO_H__ #define __GPIO_H__ #ifdef __cplusplus extern "C" { #endif #include "main.h" #include "delay.h" /* USER CODE BEGIN Includes */ #include <stdint.h> void MX_GPIO_Init(void); #ifdef __cplusplus } class GPIO { public: GPIO_TypeDef *GPIOx; // 4字节 uint16_t Pin; // 2字节 // 默认填充2字节 GPIO(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, uint32_t Mode, uint32_t Pull, uint32_t Speed); GPIO() = delete; // 禁用默认构造函数 void set(); void reset(); void toggle(); bool read() const; void operator=(bool bit); }; #endif #endif /*__ GPIO_H__ */
编辑
2024-03-19
SystemC
00

2X4译码电路

2X4译码电路

编辑
2024-03-18
SystemC
00

事件

事件是用于进程同步的 sc_event 类的对象。 流程实例可以在事件发生时(即,当事件被通知时)被触发或恢复。 任何给定的事件可能会在许多不同的场合被通知。 sc_event 有以下方法: 1. void notification():创建立即通知 2. 无效通知(const sc_time&),无效通知(double,sc_time_unit): a) 零时间:创建增量通知。 b) 非零时间:在给定时间创建定时通知,相对于调用函数notify时的模拟时间表示 3.cancel():删除此事件的任何待处理通知 a) 对于任何给定事件,最多可以存在一个待处理通知。 b) 立即通知无法取消。 限制条件: 1. sc_event 类的对象可以在精化或模拟期间构造。 2. 可以在精化或模拟期间通知事件,但在精化期间或从回调之一创建立即通知将是错误的: a) 阐述结束前, b) 详细阐述结束,或 c) 模拟开始。 给定事件不得有超过一个待处理通知: 1. 如果为已经有待处理通知的事件调用函数notify,则只有计划最早发生的通知才有效。 2. 计划在稍后时间发生的通知应取消(或从一开始就不再安排)。 3. 立即通知被认为早于增量通知发生,并且增量通知早于定时通知发生。这与调用函数notify 的顺序无关。 事件可以相互组合,也可以与计时器组合。

编辑
2024-03-17
SystemC
00

并发

SystemC 使用模拟过程来模拟并发性。这不是真正的并发执行。 当多个进程被模拟为同时运行时,在特定时间仅执行一个进程。但是,模拟时间保持不变,直到所有并发进程完成其当前任务。 因此,这些进程在同一“模拟时间”上同时运行。