fix spi protocol

This commit is contained in:
2023-10-01 10:30:58 +02:00
parent 67b3d6cf82
commit dcea417111
4 changed files with 15 additions and 8 deletions

View File

@@ -42,7 +42,7 @@ void MX_SPI2_Init(void)
hspi2.Init.Mode = SPI_MODE_MASTER;
hspi2.Init.Direction = SPI_DIRECTION_1LINE;
hspi2.Init.DataSize = SPI_DATASIZE_8BIT;
hspi2.Init.CLKPolarity = SPI_POLARITY_LOW;
hspi2.Init.CLKPolarity = SPI_POLARITY_HIGH;
hspi2.Init.CLKPhase = SPI_PHASE_1EDGE;
hspi2.Init.NSS = SPI_NSS_SOFT;
hspi2.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_32;

View File

@@ -1,5 +1,5 @@
##########################################################################################################################
# File automatically-generated by tool: [projectgenerator] version: [3.17.1] date: [Fri Sep 29 20:40:01 CEST 2023]
# File automatically-generated by tool: [projectgenerator] version: [3.17.1] date: [Sat Sep 30 08:45:04 CEST 2023]
##########################################################################################################################
# ------------------------------------------------

View File

@@ -12,6 +12,8 @@
#include "ad5303.h"
#define MAX_VOLT 330
#define MAX_REF 256
typedef enum
{
FREQ,
@@ -178,12 +180,16 @@ void update_display(void)
DISP_writeString(&disp, &font5x7Info, (uint8_t *)"*", 0, 40, BM_NORMAL);
break;
case OFFS:
snprintf((char *)data, 8, "%03u", var[OFFS]);
temp = (MAX_REF * var[REF] + 127) / UINT8_MAX;
snprintf((char *)data, 16, "%03u (%01d.%02d)", var[REF], temp / 100, temp % 100);
// snprintf((char *)data, 8, "%03u", var[OFFS]);
DISP_writeString(&disp, &font5x7Info, data, 48, 48, BM_NORMAL);
DISP_writeString(&disp, &font5x7Info, (uint8_t *)"*", 0, 48, BM_NORMAL);
break;
case ZERO:
snprintf((char *)data, 8, "%03u", var[ZERO]);
temp = (MAX_REF * var[REF] + 127) / UINT8_MAX;
snprintf((char *)data, 16, "%03u (%01d.%02d)", var[REF], temp / 100, temp % 100);
// snprintf((char *)data, 8, "%03u", var[ZERO]);
DISP_writeString(&disp, &font5x7Info, data, 48, 56, BM_NORMAL);
DISP_writeString(&disp, &font5x7Info, (uint8_t *)"*", 0, 56, BM_NORMAL);
break;
@@ -221,7 +227,7 @@ void changeValue(int8_t inc)
}
var[FREQ] += inc;
ad9833_setFrequency(&had9833, CHAN_0, var[FREQ]);
ad9833_setFrequency(&had9833, CHAN_0, var[FREQ] * 1000);
break;
}
@@ -315,13 +321,13 @@ void changeValue(int8_t inc)
case OFFS:
{
var[OFFS] = (var[OFFS] + inc) & UINT8_MAX;
ad5303_set_value(&hdac, var[OFFS], AD_DAC1);
ad5303_set_value(&hdac, var[OFFS], AD_DAC2);
break;
}
case ZERO:
{
var[ZERO] = (var[ZERO] + inc) & UINT8_MAX;
ad5303_set_value(&hdac, var[ZERO], AD_DAC2);
ad5303_set_value(&hdac, var[ZERO], AD_DAC1);
break;
}
default:

View File

@@ -264,10 +264,11 @@ SH.S_TIM3_CH1.ConfNb=1
SH.S_TIM3_CH2.0=TIM3_CH2,Encoder_Interface
SH.S_TIM3_CH2.ConfNb=1
SPI2.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_32
SPI2.CLKPolarity=SPI_POLARITY_HIGH
SPI2.CalculateBaudRate=750.0 KBits/s
SPI2.DataSize=SPI_DATASIZE_8BIT
SPI2.Direction=SPI_DIRECTION_1LINE
SPI2.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,BaudRatePrescaler,DataSize
SPI2.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,BaudRatePrescaler,DataSize,CLKPolarity
SPI2.Mode=SPI_MODE_MASTER
SPI2.VirtualType=VM_MASTER
SPI3.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_32