parent
d99585f28a
commit
365eef3122
|
@ -1153,12 +1153,16 @@ void set_working_mode(SIG_FUNCTIONS mode, SIG_FUNCTIONS_TYPE type)
|
|||
m5data.io_on2off = IO_OFF;
|
||||
io_on2off_status(); //更新ON/OFF/IN/OUT状态指示
|
||||
|
||||
|
||||
//数码管输入显示置零
|
||||
set_nixie_cube(IO_INPUT, 99, 0);
|
||||
|
||||
//数码管输出值置零
|
||||
set_output(0);
|
||||
|
||||
//当前输出清零
|
||||
sig_sv_update();
|
||||
|
||||
//游标恢复至小数点前1位,个位
|
||||
m5data.io_cursor = 3;
|
||||
m5data.io_cursor_prv = 3;
|
||||
|
|
|
@ -119,6 +119,7 @@ static void fun_pwr12_ctrl(uint8_t ch)
|
|||
}
|
||||
|
||||
uint8_t pulse = 50;
|
||||
float32 fre_set = 0;
|
||||
void mux_signal_switch(st_mux_signal *mux_signal)
|
||||
{
|
||||
CHANNEL ch;
|
||||
|
@ -143,7 +144,8 @@ void mux_signal_switch(st_mux_signal *mux_signal)
|
|||
// ads1220_operation(CH2_OUT_CUR, &mux_signal->data_pv);
|
||||
break;
|
||||
case CH3_OUT_FRE:
|
||||
freq_operation(mux_signal->data_sv, pulse);
|
||||
freq_operation(mux_signal->data_sv, pulse, TIM_CHANNEL_2);
|
||||
fre_set = mux_signal->data_sv;
|
||||
fun_get_freq(&freq_signal, &mux_signal->data_pv);
|
||||
break;
|
||||
case CH4_OUT_RES:
|
||||
|
|
|
@ -51,6 +51,7 @@ typedef struct
|
|||
|
||||
extern st_freq_signal freq_signal;
|
||||
extern st_mux_signal mux_signal;
|
||||
extern float32 fre_set;
|
||||
|
||||
void pwr_cosume(BOOL rst, uint32_t ms);
|
||||
void mux_signal_switch(st_mux_signal *mux_signal);
|
||||
|
|
|
@ -29,19 +29,29 @@ extern "C" {
|
|||
#include "main.h"
|
||||
|
||||
/* USER CODE BEGIN Includes */
|
||||
#define FREQ_SYS 921600
|
||||
#define freq_operation(FREQ, PULSE) \
|
||||
#define FREQ_SYS 82944000
|
||||
#define freq_operation(FREQ, PULSE, CHAN) \
|
||||
do \
|
||||
{ \
|
||||
if (FREQ <= 0 || FREQ >= FREQ_SYS || PULSE <= 0 || PULSE >= 100) \
|
||||
if (FREQ <= 0 || FREQ >= 500000 || PULSE <= 0 || PULSE >= 100) \
|
||||
{ \
|
||||
HAL_TIMEx_PWMN_Stop(&htim1, TIM_CHANNEL_2); \
|
||||
HAL_TIMEx_PWMN_Stop(&htim1, CHAN); \
|
||||
return; \
|
||||
} \
|
||||
int32_t duty = ( (float32)FREQ_SYS / (float32)FREQ + (float32)0.5 ); \
|
||||
__HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_2, duty *PULSE / 100 - 1); \
|
||||
__HAL_TIM_SET_AUTORELOAD(&htim1, duty -1); \
|
||||
HAL_TIMEx_PWMN_Start(&htim1, TIM_CHANNEL_2); \
|
||||
int fre_duty = 0; \
|
||||
if(FREQ <= 50000) \
|
||||
{ \
|
||||
__HAL_TIM_SET_PRESCALER(&htim1, 1600-1); \
|
||||
fre_duty = ( (float32)FREQ_SYS / (float32)1600.0 / (float32)FREQ + (float32)0.5 ); \
|
||||
} \
|
||||
else \
|
||||
{ \
|
||||
__HAL_TIM_SET_PRESCALER(&htim1, 2-1); \
|
||||
fre_duty = ( (float32)FREQ_SYS / (float32)2.0 / (float32)FREQ + (float32)0.5 ); \
|
||||
} \
|
||||
__HAL_TIM_SET_AUTORELOAD(&htim1, fre_duty -1); \
|
||||
__HAL_TIM_SET_COMPARE(&htim1, CHAN, fre_duty *PULSE / 100 - 1); \
|
||||
HAL_TIMEx_PWMN_Start(&htim1, CHAN); \
|
||||
} while (0)
|
||||
|
||||
/* USER CODE END Includes */
|
||||
|
|
|
@ -204,6 +204,7 @@ void start_task_lcd(void const * argument)
|
|||
* @retval None
|
||||
*/
|
||||
uint8_t hart_test = 0;
|
||||
uint8_t hart_cnt = 0;
|
||||
/* USER CODE END Header_start_task_hart */
|
||||
void start_task_hart(void const * argument)
|
||||
{
|
||||
|
@ -215,13 +216,26 @@ void start_task_hart(void const * argument)
|
|||
|
||||
if(hart_test == 1)
|
||||
{
|
||||
hart_test = 0;
|
||||
hart_test = 2;
|
||||
|
||||
scom1_hart.tx_flag = TRUE;
|
||||
freq_operation(460800, 50);
|
||||
delay_cnt(1000);
|
||||
|
||||
if(fre_set != 460800)
|
||||
{
|
||||
freq_operation(460800, 50, TIM_CHANNEL_3);
|
||||
fre_set = 460800;
|
||||
}
|
||||
}
|
||||
|
||||
if(hart_test == 2)
|
||||
{
|
||||
hart_cnt++;
|
||||
if(hart_cnt > 50)
|
||||
{
|
||||
hart_communicate(&scom1_hart);
|
||||
hart_test = 0;
|
||||
hart_cnt = 0;
|
||||
}
|
||||
}
|
||||
|
||||
//transparent_hart(&scom1_hart);
|
||||
|
|
|
@ -153,24 +153,7 @@
|
|||
<Name>-U53FF6B064884525650271587 -O2254 -SF5000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(2BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407VGTx$CMSIS\Flash\STM32F4xx_1024.FLM) -WA0 -WE0 -WVCE4 -WS2710 -WM0 -WP2 -WK0</Name>
|
||||
</SetRegEntry>
|
||||
</TargetDriverDllRegistry>
|
||||
<Breakpoint>
|
||||
<Bp>
|
||||
<Number>0</Number>
|
||||
<Type>0</Type>
|
||||
<LineNumber>47</LineNumber>
|
||||
<EnabledFlag>1</EnabledFlag>
|
||||
<Address>134288218</Address>
|
||||
<ByteObject>0</ByteObject>
|
||||
<HtxType>0</HtxType>
|
||||
<ManyObjects>0</ManyObjects>
|
||||
<SizeOfObject>0</SizeOfObject>
|
||||
<BreakByAccess>0</BreakByAccess>
|
||||
<BreakIfRCount>1</BreakIfRCount>
|
||||
<Filename>..\App\HART\hart.c</Filename>
|
||||
<ExecCommand></ExecCommand>
|
||||
<Expression>\\signal_generator\../App/HART/hart.c\47</Expression>
|
||||
</Bp>
|
||||
</Breakpoint>
|
||||
<Breakpoint/>
|
||||
<WatchWindow1>
|
||||
<Ww>
|
||||
<count>0</count>
|
||||
|
@ -257,6 +240,11 @@
|
|||
<WinNumber>1</WinNumber>
|
||||
<ItemText>hart_test,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>17</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>fre_set</ItemText>
|
||||
</Ww>
|
||||
</WatchWindow1>
|
||||
<WatchWindow2>
|
||||
<Ww>
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue