fix: 修复一系列bug,包括热启动,前端模板,jtag; feat:修改矩阵键盘样式

This commit is contained in:
SikongJueluo 2025-08-21 22:59:29 +08:00
parent 78dcc5a629
commit 8fbd30e69f
6 changed files with 2054 additions and 699 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,4 @@
# CommandID
示波器12 示波器12
逻辑分析仪: 11 逻辑分析仪: 11
Jtag: 10 Jtag: 10

View File

@ -190,11 +190,12 @@ public sealed class UDPClientPool
/// <returns>是否成功</returns> /// <returns>是否成功</returns>
public async static ValueTask<bool> SendResetSignal(IPEndPoint endPoint) public async static ValueTask<bool> SendResetSignal(IPEndPoint endPoint)
{ {
return await Task.Run(() => return await Task.Run(async () =>
{ {
return SendAddrPack( var ret = SendAddrPack(endPoint,
endPoint,
new WebProtocol.SendAddrPackage(BurstType.FixedBurst, 0, true, 0, 0xF0F0F0F0)); new WebProtocol.SendAddrPackage(BurstType.FixedBurst, 0, true, 0, 0xF0F0F0F0));
await Task.Delay(100);
return ret;
}); });
} }

View File

@ -18,8 +18,8 @@
</feMerge> </feMerge>
</filter> </filter>
<linearGradient id="normal" gradientTransform="rotate(45 0 0)"> <linearGradient id="normal" gradientTransform="rotate(45 0 0)">
<stop stop-color="#4b4b4b" offset="0" /> <stop stop-color="#FFFFFF" offset="0" />
<stop stop-color="#171717" offset="1" /> <stop stop-color="#333333" offset="1" />
</linearGradient> </linearGradient>
<linearGradient id="pressed" gradientTransform="rotate(45 0 0)"> <linearGradient id="pressed" gradientTransform="rotate(45 0 0)">
<stop stop-color="#171717" offset="0" /> <stop stop-color="#171717" offset="0" />
@ -42,7 +42,6 @@
fill-opacity="0.9" @mousedown="toggleButtonState(true)" @mouseup="toggleButtonState(false)" fill-opacity="0.9" @mousedown="toggleButtonState(true)" @mouseup="toggleButtonState(false)"
@mouseleave="toggleButtonState(false)" style=" @mouseleave="toggleButtonState(false)" style="
pointer-events: auto; pointer-events: auto;
transition: all 20ms ease-in-out;
cursor: pointer; cursor: pointer;
" /> " />
<!-- 按键文字 - 仅显示绑定的按键 --> <!-- 按键文字 - 仅显示绑定的按键 -->

View File

@ -84,7 +84,7 @@ interface Props {
color?: string; color?: string;
enableDigitalTwin?: boolean; enableDigitalTwin?: boolean;
digitalTwinNum?: number; digitalTwinNum?: number;
afterglowDuration?: number; // afterglowDuration?: number;
cathodeType?: "common" | "anode"; cathodeType?: "common" | "anode";
pins?: Array<{ pins?: Array<{
pinId: string; pinId: string;
@ -234,24 +234,24 @@ function updateDisplayByte(newByte: number) {
const oldByte = displayByte.value; const oldByte = displayByte.value;
displayByte.value = newByte; displayByte.value = newByte;
// // //
if (oldByte !== 0 && newByte !== oldByte) { // if (oldByte !== 0 && newByte !== oldByte) {
startAfterglow(oldByte); // startAfterglow(oldByte);
} // }
} }
function startAfterglow(byte: number) { // function startAfterglow(byte: number) {
afterglowByte.value = byte; // afterglowByte.value = byte;
if (afterglowTimer.value) { // if (afterglowTimer.value) {
clearTimeout(afterglowTimer.value); // clearTimeout(afterglowTimer.value);
} // }
afterglowTimer.value = setTimeout(() => { // afterglowTimer.value = setTimeout(() => {
afterglowByte.value = 0; // afterglowByte.value = 0;
afterglowTimer.value = null; // afterglowTimer.value = null;
}, props.afterglowDuration); // }, props.afterglowDuration);
} // }
function cleanupDigitalTwin() { function cleanupDigitalTwin() {
eqps.sevenSegmentDisplaySetOnOff(false); eqps.sevenSegmentDisplaySetOnOff(false);
@ -395,7 +395,7 @@ export function getDefaultProps() {
color: "red", color: "red",
enableDigitalTwin: false, enableDigitalTwin: false,
digitalTwinNum: 1, digitalTwinNum: 1,
afterglowDuration: 500, // afterglowDuration: 500,
cathodeType: "common", cathodeType: "common",
pins: [ pins: [
{ pinId: "a", constraint: "", x: 10, y: 170 }, { pinId: "a", constraint: "", x: 10, y: 170 },

View File

@ -48,6 +48,8 @@ export const useEquipments = defineStore("equipments", () => {
1000, 1000,
new Error("JtagClient Mutex Timeout!"), new Error("JtagClient Mutex Timeout!"),
); );
// jtag Hub
const jtagHubConnection = ref<HubConnection>(); const jtagHubConnection = ref<HubConnection>();
const jtagHubProxy = ref<IJtagHub>(); const jtagHubProxy = ref<IJtagHub>();