- 2023-11-08
-
回复了主题帖:
电机的问题
fjdeepblue 发表于 2023-11-4 16:08
直流永磁 电机 是正弦波驱动,BLDC有方波驱动,也有正弦波驱动
谢谢!我想买三相交流异步电机开发板,可是网上找不到。还有三相交流永磁电机开发板。记得以前网上挺多的,现在不好找了。
- 2023-11-04
-
回复了主题帖:
电机的问题
是不是直流无刷电动机电机是方波,直流永磁同步是正弦波?谢谢!
- 2023-11-02
-
发表了主题帖:
电机的问题
我在淘宝上买BLDC电机开发板,发现好多BLDC和OMSM混在一起。
还有我还想买异步电机开发板,可是很不好找。请问哪里有卖的?淘宝京东都找了,只有定制的不单卖。
请高手指教,谢谢!
-
回复了主题帖:
用Verilog如何给数组赋值
浪里涛涛 发表于 2023-9-15 14:43
mema [0]=8'h55;
mema [1]=8'ha5;
mema [2]=8'haa;
mema [3]=8'h55;
应该这样 ...
谢谢!我试试
- 2023-07-30
-
回复了主题帖:
STM32L4R5如何增加一个输入端点2
led2015 发表于 2023-7-29 20:23
确定硬件需求:首先,你需要确保你的USB键盘硬件支持鼠标端点,包括相应的芯片和电路布局。如果你的 ...
我发现你根本不懂,这跟电路布局有什么关系。圈圈的书你估计就没看过吧。
这只跟USB的程序有关系,按键就是普通的按键。
- 2023-07-29
-
发表了主题帖:
统计数据中1的个数的问题
verilog程序
module ones(clk,rst,count_1);
input clk;
input rst;
inout reg [3:0] count_1;
reg [3:0] j;
reg [3:0] i;
reg [3:0] k;
endmodule
test bench程序
`timescale 1 ns/ 1 ps
module ones_vlg_tst();
// constants
// general purpose registers
//reg eachvec;
// test vector input registers
reg clk;
reg [3:0] treg_count_1;
reg rst;
// wires
wire [3:0] count_1;
reg [3:0] j;
reg [3:0] i;
reg [3:0] k;
reg [3:0] count;
// assign statements (if any)
assign count_1 = treg_count_1;
ones i1 (
// port map - connection between master ports and signals/registers
.clk(clk),
.count_1(count_1),
.rst(rst)
);
initial
begin
// code that executes only once
// insert code here --> begin
// --> end
$display("Running testbench");
end
initial
// optional sensitivity list
// @(event1 or event2 or .... eventn)
begin
// code executes for every event on sensitivity list
// insert code here --> begin
clk=0;
forever
#10 clk=~clk;
// --> end
end
initial
// optional sensitivity list
// @(event1 or event2 or .... eventn)
begin
// code executes for every event on sensitivity list
// insert code here --> begin
rst=1;
#15 rst=0;
#15 rst=1;
#1000 $stop;
// --> end
end
always @(posedge clk or negedge rst)
begin
if(!rst)
begin
i<=4'd0;
count<=4'd0;
treg_count_1<=4'd0;
end
else
begin
treg_count_1<=4'd0;
for(j=0;j<=3;j=j+1)
begin
k<=i;
if((k&4'b0001)==4'b0001)
begin
treg_count_1<=treg_count_1+1;
end
if((k&4'b0010)==4'b0010)
begin
treg_count_1<=treg_count_1+1;
end
if((k&4'b0100)==4'b0100)
begin
treg_count_1<=treg_count_1+1;
end
if((k&4'b1000)==4'b1000)
begin
treg_count_1<=treg_count_1+1;
end
end
count<=treg_count_1;
i<=(i+1);
$display("%d,%d\n",treg_count_1,count);
//treg_count_1<=4'd0;
//count<=4'd0;
end
end
endmodule
运行结果:
明显不对。请问高手,哪里出错了?谢谢
- 2023-07-28
-
发表了主题帖:
verilog仿真文件数组初始化出错
请问这个问题如何解决?谢谢!
- 2023-07-25
-
回复了主题帖:
STM32CubeMX自动生成USB代码的问题
damiaa 发表于 2023-7-25 09:41
csdn 上有文章讲了这个 https://blog.csdn.net/zlk1214/article/details/106414976/
STM32L4R5芯片生成的代码没有设备描述符
-
回复了主题帖:
STM32CubeMX自动生成USB代码的问题
Jacktang 发表于 2023-7-25 07:31
设备类bDeviceClass必须指定为0x02,这个有什么问题
没有正式的设备描述符,在哪指定啊
- 2023-07-24
-
发表了主题帖:
STM32CubeMX自动生成USB代码的问题
STM32L4R5用STM32CubeMX自动生成USB代码,没有正式的设备描述符。
如下:
#define USBD_VID 1155
#define USBD_LANGID_STRING 1033
#define USBD_MANUFACTURER_STRING "STMicroelectronics"
#define USBD_PID_FS 22315
#define USBD_PRODUCT_STRING_FS "STM32 Human interface"
#define USBD_CONFIGURATION_STRING_FS "HID Config"
#define USBD_INTERFACE_STRING_FS "HID Interface"
#define USB_SIZ_BOS_DESC 0x0C
可是USB模拟串口必须指定设备的类型,即设备类bDeviceClass必须指定为0x02。
这可怎么办啊?自己写可太难了。
请大神支招,谢谢!
-
回复了主题帖:
不进定时器中断的问题
谢谢各位,查不出来,换成键盘查询方式了
-
发表了主题帖:
不进定时器中断的问题
我有一个STM32L4R5的板子,有一个工程用到定时器6,可以进中断。
部分代码如下:
static void MX_TIM6_Init(void)
{
/* USER CODE BEGIN TIM6_Init 0 */
/* USER CODE END TIM6_Init 0 */
TIM_MasterConfigTypeDef sMasterConfig = {0};
/* USER CODE BEGIN TIM6_Init 1 */
/* USER CODE END TIM6_Init 1 */
htim6.Instance = TIM6;
htim6.Init.Prescaler = 16;
htim6.Init.CounterMode = TIM_COUNTERMODE_UP;
htim6.Init.Period = 14286;
htim6.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE;
if (HAL_TIM_Base_Init(&htim6) != HAL_OK)
{
Error_Handler();
}
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
if (HAL_TIMEx_MasterConfigSynchronization(&htim6, &sMasterConfig) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN TIM6_Init 2 */
/* USER CODE END TIM6_Init 2 */
}
主程序部分:
MX_TIM6_Init();
HAL_TIM_Base_Start_IT(&htim6);
中断服务程序
void TIM6_DAC_IRQHandler(void)
{
/* USER CODE BEGIN TIM6_DAC_IRQn 0 */
if(!KeyCanChange)return; //如果正在处理按键,则不再扫描键盘
//开始键盘扫描
//保存按键状态到当前按键情况
//KeyCurrent总共有8个bit
//当某个开关按下时,对应的bit为1
KeyCurrent=(HAL_GPIO_ReadPort(GPIOC)&0x0f); //读取键值,GetKeyValue()其实是个宏,不是函数,
//这里故意写成函数的样子,美观。它的定义在
//key.h文件中
if(KeyCurrent!=KeyOld) //如果两次值不等,说明按键情况发生了改变
{
KeyNoChangedTime=0; //键盘按下时间为1
KeyOld=KeyCurrent; //保存当前按键情况
return; //返回
}
else
{
KeyNoChangedTime++; //按下时间累计
if(KeyNoChangedTime>=1) //如果按下时间足够
{
KeyNoChangedTime=1;
KeyPress=KeyOld; //保存按键
KeyDown|=(~KeyLast)&(KeyPress); //求出新按下的键
KeyUp|=KeyLast&(~KeyPress); //求出新释放的键
KeyLast=KeyPress; //保存当前按键情况
}
}
//HAL_GPIO_TogglePin(LD1_GPIO_Port, LD1_Pin);
/* USER CODE END TIM6_DAC_IRQn 0 */
HAL_TIM_IRQHandler(&htim6);
/* USER CODE BEGIN TIM6_DAC_IRQn 1 */
/* USER CODE END TIM6_DAC_IRQn 1 */
}
/* USER CODE END 1 */
另一个工程定时器部分和这个一样,可就是不进中断,我反复对比,都一样。
请问高手,可能是什么原因造成不进中断呢?谢谢!
-
发表了主题帖:
STM32L4R5如何增加一个输入端点2
我参考圈圈的书,想实现带鼠标功能的USB键盘(方法2),需要增加一个端点2。
我不知道怎么搞,网上查了不少资料也不管用。
请大神支招,谢谢!
-
回复了主题帖:
晒一晒我的大学录取通知书
lb8820265 发表于 2023-7-23 21:53
哈哈,为啥呀?其实读到后面,大多数时候就是自己在研究了,也没有小时候被逼迫读书的那种感觉了的。
没钱那
- 2023-07-23
-
回复了主题帖:
晒一晒我的大学录取通知书
我是再也不想读书了
- 2023-07-22
-
发表了主题帖:
quartus使用eclipse搞ucos的问题
锆石科技开发板例程里有ucosii例程,
可是编译通不过,提示
可是包含头文件的文件夹已经包含了。
请问高手,如何解决?谢谢!
- 2023-07-21
-
回复了主题帖:
CPLD能定制软核吗
fxyc87 发表于 2023-7-21 08:39
CPLD和FPGA其实区别已不大了,逻辑LE也有非常大的,8051软核没问题,RISC-V核也有,
难道定制一个单片机的软核吗?我说的是一般外设的软核
-
回复了主题帖:
CPLD能定制软核吗
led2015 发表于 2023-7-20 19:47
CPLD可以定制其硬件结构,但不能直接定制软核。
谢谢
- 2023-07-20
-
发表了主题帖:
CPLD能定制软核吗
弱弱地问一句,CPLD能定制软核吗?谢谢!
-
回复了主题帖:
自定义IP核出错导致界面出错
lkh747566933 发表于 2023-7-19 14:53
确保IP核的设计和实现正确,没有错误或逻辑问题。确保IP核的配置参数正确设置,与所需功能和接口匹配。
你抄袭人家沙发的