This commit is contained in:
2026-05-05 14:27:47 +08:00
parent 7b9330b6d1
commit 248c2e13ca

View File

@@ -44,6 +44,7 @@ namespace 头罩视野.Views
public PageTest()
{
InitializeComponent();
InitLightPositions();
System.Diagnostics.Debug.WriteLine("页面加载了111111111");
_timer = InitDispatcherTimer();
// 2. 初始化定时器500毫秒 执行一次
@@ -60,7 +61,35 @@ namespace 头罩视野.Views
}
}
//
// 硬件固定参数(提前定义好,不要改)
private const int LightsPerStrip = 81; // 单条灯条81个灯
private const int HalfLights = (LightsPerStrip - 1) / 2; // 40给左右灯条用
private List<(int m, int n)> _lightPositions;
private void InitLightPositions()
{
// 清空列表,避免重复初始化
_lightPositions = new List<(int m, int n)>();
for (int m = 0; m < LightsPerStrip; m++)
{
_lightPositions.Add((m, n: 0));
}
for (int m = 0; m < LightsPerStrip; m++)
{
_lightPositions.Add((m, n: 1));
}
for (int m = -HalfLights; m <= HalfLights; m++)
{
_lightPositions.Add((m, n: 2));
}
// 验证总数81+81+81=243和硬件总灯数完全一致
System.Diagnostics.Debug.WriteLine($"灯条数据:{_lightPositions.Count}");
}
// 蓝色亮(蓝色)
private void LedOn(Ellipse led)
{
@@ -191,11 +220,7 @@ namespace 头罩视野.Views
// 1. 读取输入框
double stepAngle = double.Parse(fbspeed.Text); // 分辨角度 例10
if (double.TryParse(fbspeed.Text, out double step))
{
// 直接赋值给计算页面的静态变量
GetArea.angleStep = step;
}
//double speed = double.Parse(zdangle.Text); // 转动速度
int[] lightData = DataList.Cast<int>().ToArray(); // 1. 把DataListList<dynamic>转成方法需要的int[]
// 1. 定义总和变量初始为0
@@ -393,7 +418,7 @@ namespace 头罩视野.Views
};
return timer;
}
private List<(int m, int n)> _lightPositions;
private async System.Threading.Tasks.Task ReadAddr262DataAsync()
{
try