Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 02:06 13 Nov 2025 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : Which module for the H7

     Page 1 of 2    
Author Message
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 08:38am 15 Jun 2019
Copy link to clipboard 
Print this post

Apologies if this has been addressed but the Nucleo module linked in the manual, states that it is no longer manufactured.

Which is the one to go for now?
 
goc30

Guru

Joined: 12/04/2017
Location: France
Posts: 435
Posted: 09:04am 15 Jun 2019
Copy link to clipboard 
Print this post

have-you see h753ZI?Edited by goc30 2019-06-16
 
KeepIS

Guru

Joined: 13/10/2014
Location: Australia
Posts: 1945
Posted: 09:26am 15 Jun 2019
Copy link to clipboard 
Print this post

I believe the replacement is NUCLEO-H743ZI2

Development Board, STM32 Nucleo-144, STM32H743ZI MCU, ST Zio, ST Morpho.

Mike.

NANO Inverter: Full download - Only Hex Ver 8.1Ks
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10572
Posted: 09:54am 15 Jun 2019
Copy link to clipboard 
Print this post

  Quote  I believe the replacement is NUCLEO-H743ZI2

Development Board, STM32 Nucleo-144, STM32H743ZI MCU, ST Zio, ST Morpho.

Mike.


Correct. As far as I can see the only difference is an update of the ST-LINK from V2 to V3
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 01:48pm 15 Jun 2019
Copy link to clipboard 
Print this post

Ah, good...Thanks, all
 
SiNut
Newbie

Joined: 12/03/2015
Location: United States
Posts: 12
Posted: 05:09pm 20 Jun 2019
Copy link to clipboard 
Print this post

I just received a NUCLEO-H743ZI2 from Digikey. As stated above the module has V3 of the ST_LINK. I had to install a new version of the USB driver to get it working with my PC. The driver from ST is "STSW-LINK009".

The other notable change is that this module has a 480Mhz processor on it, up from 400Mhz on the previous version.

I loaded the latest version of ARMmite H7 code (2019-06-16 194636 Armmite1.3bin) and it ran without a hitch - once I had updated the driver.


Cheers,

-- Gurbir
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 07:52pm 20 Jun 2019
Copy link to clipboard 
Print this post

Very cool...thanks for the info.

Cheers
 
HardingJohn

Regular Member

Joined: 28/07/2017
Location: Australia
Posts: 78
Posted: 12:49am 24 Jun 2019
Copy link to clipboard 
Print this post

Can someone check that the new Nucleo-H743ZI2 is actually running at 480 Mhz not 400 Mhz without needing to change anything in the ARMmite1.3 code??

It uses the new model STM32H743ZIT6U chip which can run at speeds up to 480Mhz.
I presume the HSE clock crystal is still 8Mhz on the Nucleo ZI2 board??

Thanks John
Just know enough to get me in trouble, but not quite enough to get me out.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10572
Posted: 06:50am 24 Jun 2019
Copy link to clipboard 
Print this post

  Quote  Can someone check that the new Nucleo-H743ZI2 is actually running at 480 Mhz not 400 Mhz without needing to change anything in the ARMmite1.3 code??


It won't. A significant code change is needed to run at a different speed and

a) I don't have a ZI2
b) If the chips have the same ID then there is no way the code can know if it can run at the higher speed
 
KeepIS

Guru

Joined: 13/10/2014
Location: Australia
Posts: 1945
Posted: 03:56am 25 Jun 2019
Copy link to clipboard 
Print this post

I've just got one of the new boards and the first things I noticed are:

1: Cannot remove the Debugger Programmer board.

2: The board has a new layout and completely different link set.

3: Same link software I had installed works as before and finds V.3.

4: Dropped the H7.bin file onto the Virtual drive and MMBasic prompt was there.

I now need to download the Circuits and documentation for the new board to enable / remove the required links.

BTW the package states M7 Core at 480 MHz.

Mike.

NANO Inverter: Full download - Only Hex Ver 8.1Ks
 
HardingJohn

Regular Member

Joined: 28/07/2017
Location: Australia
Posts: 78
Posted: 04:29am 25 Jun 2019
Copy link to clipboard 
Print this post

The 8Mhz HSE clock on the new Nucleo-H743ZI2 board is supplied by the ST Link MCO.
The board has provision for a 25 Mhz crystal as an alternative but is not fitted.

The 32.768Mhz LSE clock crystal is fitted.

It would be nice to use this new 480Mhz capable chip. The 8Mhz HSE should be kept.

Would it be too much work to provide an ARMmite CPU Speed Option to select either 400 Mhz or 480 Mhz?
Just know enough to get me in trouble, but not quite enough to get me out.
 
KeepIS

Guru

Joined: 13/10/2014
Location: Australia
Posts: 1945
Posted: 04:51am 25 Jun 2019
Copy link to clipboard 
Print this post

That's the same as the previous version of the board, are you thinking that this new board is only running at 400MHz as is?

BTW: I haven't had time to read though the manual as yet but I did a quick" Sieve of Eratosthenes Speed Test" used on this forum, the old and new boards are the same showing around 0.486.
Edited by KeepIS 2019-06-26
NANO Inverter: Full download - Only Hex Ver 8.1Ks
 
JohnS
Guru

Joined: 18/11/2011
Location: United Kingdom
Posts: 4135
Posted: 05:54am 25 Jun 2019
Copy link to clipboard 
Print this post

Peter already said in this topic that it will be running MMBasic at the same (400MHz) speed.

John
 
KeepIS

Guru

Joined: 13/10/2014
Location: Australia
Posts: 1945
Posted: 06:04am 25 Jun 2019
Copy link to clipboard 
Print this post

I was only interested in processor clock speed. Not how the Port to the ARM handles clock speed.

NANO Inverter: Full download - Only Hex Ver 8.1Ks
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10572
Posted: 07:05am 25 Jun 2019
Copy link to clipboard 
Print this post

  Quote  I was only interested in processor clock speed. Not how the Port to the ARM handles clock speed.


It is the Port to the ARM that sets the processor clock speed. Nothing runs without a lot of code setting up multiple PLLs. Because MMBasic has lots of real time functionality, all this can be affected by clock changes

void SystemClock_Config(void)
{

RCC_OscInitTypeDef RCC_OscInitStruct;
RCC_ClkInitTypeDef RCC_ClkInitStruct;
RCC_PeriphCLKInitTypeDef PeriphClkInitStruct;

/**Supply configuration update enable
*/
MODIFY_REG(PWR->CR3, PWR_CR3_SCUEN, 0);

/**Configure the main internal regulator output voltage
*/
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);

while ((PWR->D3CR & (PWR_D3CR_VOSRDY)) != PWR_D3CR_VOSRDY)
{

}
/**Configure LSE Drive Capability
*/
HAL_PWR_EnableBkUpAccess();

__HAL_RCC_LSEDRIVE_CONFIG(RCC_LSEDRIVE_LOW);

/**Macro to configure the PLL clock source
*/
__HAL_RCC_PLL_PLLSOURCE_CONFIG(RCC_PLLSOURCE_HSE);

/**Initializes the CPU, AHB and APB busses clocks
*/
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI48|RCC_OSCILLATORTYPE_HSI
|RCC_OSCILLATORTYPE_HSE|RCC_OSCILLATORTYPE_LSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.LSEState = RCC_LSE_ON;
RCC_OscInitStruct.HSIState = RCC_HSI_DIV1;
RCC_OscInitStruct.HSICalibrationValue = 16;
RCC_OscInitStruct.HSI48State = RCC_HSI48_ON;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLM = 1;
RCC_OscInitStruct.PLL.PLLN = 100;
RCC_OscInitStruct.PLL.PLLP = 2;
RCC_OscInitStruct.PLL.PLLQ = 4;
RCC_OscInitStruct.PLL.PLLR = 2;
RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_3;
RCC_OscInitStruct.PLL.PLLVCOSEL = RCC_PLL1VCOWIDE;
RCC_OscInitStruct.PLL.PLLFRACN = 0;
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
{
_Error_Handler(__FILE__, __LINE__);
}

/**Initializes the CPU, AHB and APB busses clocks
*/
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2
|RCC_CLOCKTYPE_D3PCLK1|RCC_CLOCKTYPE_D1PCLK1;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
RCC_ClkInitStruct.SYSCLKDivider = RCC_SYSCLK_DIV1;
RCC_ClkInitStruct.AHBCLKDivider = RCC_HCLK_DIV2;
RCC_ClkInitStruct.APB3CLKDivider = RCC_APB3_DIV2;
RCC_ClkInitStruct.APB1CLKDivider = RCC_APB1_DIV2;
RCC_ClkInitStruct.APB2CLKDivider = RCC_APB2_DIV2;
RCC_ClkInitStruct.APB4CLKDivider = RCC_APB4_DIV2;

if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
{
_Error_Handler(__FILE__, __LINE__);
}

PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_RTC|RCC_PERIPHCLK_USART3
|RCC_PERIPHCLK_USART2|RCC_PERIPHCLK_USART6
|RCC_PERIPHCLK_USART1|RCC_PERIPHCLK_UART5
|RCC_PERIPHCLK_RNG|RCC_PERIPHCLK_SPI5
|RCC_PERIPHCLK_SPI3|RCC_PERIPHCLK_SPI1
|RCC_PERIPHCLK_SPI2|RCC_PERIPHCLK_I2C2
|RCC_PERIPHCLK_ADC|RCC_PERIPHCLK_I2C1
|RCC_PERIPHCLK_USB;
PeriphClkInitStruct.PLL2.PLL2M = 2;
PeriphClkInitStruct.PLL2.PLL2N = 100;
PeriphClkInitStruct.PLL2.PLL2P = 8;
PeriphClkInitStruct.PLL2.PLL2Q = 8;
PeriphClkInitStruct.PLL2.PLL2R = 8;
PeriphClkInitStruct.PLL2.PLL2RGE = RCC_PLL2VCIRANGE_2;
PeriphClkInitStruct.PLL2.PLL2VCOSEL = RCC_PLL2VCOWIDE;
PeriphClkInitStruct.PLL2.PLL2FRACN = 0;
PeriphClkInitStruct.PLL3.PLL3M = 4;
PeriphClkInitStruct.PLL3.PLL3N = 192;
PeriphClkInitStruct.PLL3.PLL3P = 8;
PeriphClkInitStruct.PLL3.PLL3Q = 5;
PeriphClkInitStruct.PLL3.PLL3R = 4;
PeriphClkInitStruct.PLL3.PLL3RGE = RCC_PLL3VCIRANGE_1;
PeriphClkInitStruct.PLL3.PLL3VCOSEL = RCC_PLL3VCOWIDE;
PeriphClkInitStruct.PLL3.PLL3FRACN = 0;
PeriphClkInitStruct.Spi123ClockSelection = RCC_SPI123CLKSOURCE_PLL2;
PeriphClkInitStruct.Spi45ClockSelection = RCC_SPI45CLKSOURCE_PLL3;
PeriphClkInitStruct.Usart234578ClockSelection = RCC_USART234578CLKSOURCE_D2PCLK1;
PeriphClkInitStruct.Usart16ClockSelection = RCC_USART16CLKSOURCE_D2PCLK2;
PeriphClkInitStruct.RngClockSelection = RCC_RNGCLKSOURCE_HSI48;
PeriphClkInitStruct.I2c123ClockSelection = RCC_I2C123CLKSOURCE_HSI;
PeriphClkInitStruct.UsbClockSelection = RCC_USBCLKSOURCE_HSI48;
PeriphClkInitStruct.AdcClockSelection = RCC_ADCCLKSOURCE_PLL2;
PeriphClkInitStruct.RTCClockSelection = RCC_RTCCLKSOURCE_LSE;
if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK)
{
_Error_Handler(__FILE__, __LINE__);
}

HAL_RCC_MCOConfig(RCC_MCO1, RCC_MCO1SOURCE_HSI48, RCC_MCODIV_4);

/**Configure the Systick interrupt time
*/
HAL_SYSTICK_Config(SystemCoreClock/1000);

/**Configure the Systick
*/
HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK);

/* SysTick_IRQn interrupt configuration */
HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);
}



Edited by matherp 2019-06-26
 
KeepIS

Guru

Joined: 13/10/2014
Location: Australia
Posts: 1945
Posted: 10:01pm 25 Jun 2019
Copy link to clipboard 
Print this post

I tried to reply last night but the forum keep loosing a connection from my location.

I'm thinking that I will have to re-word my reply's in this forum as they seem to be taken out of context?

  Quote  I was only interested in processor clock speed. Not how the Port to the ARM handles clock speed.


My comment above was to indicate that I wanted to know if the CPU is indeed a 480Mhz part and not testing under the timing constraints of running under mm.basic. It was not a slight on the Port to ARM, I understand the complexities of internal scaling and PPL control of timing and final internal clock speed, hence my comment.

It was a curiosity thing as the CPU's appear to be the same part number, but obviously, as in the past, that is no indication of the speed capability of the part, I was hoping the ARM had not gone down the Microchip's path.

IE: Same part number and ID but sold as different speed parts with no way of really knowing if you got the correct part. I got burned by this with the M100 120Mhz.

Anyway, just now I see that you have been busy coding an option for CPU speed and this is really fantastic, thankyou once again for the time and effort.

NANO Inverter: Full download - Only Hex Ver 8.1Ks
 
CaptainBoing

Guru

Joined: 07/09/2016
Location: United Kingdom
Posts: 2171
Posted: 05:21am 26 Jun 2019
Copy link to clipboard 
Print this post

  KeepIS said  
... reply's in this forum ... taken out of context?


seems to be a rash of it just lately.

I just want to put it out there: if I ever say anything that can be taken two ways and one of those ways makes you angry or sad, I meant the other one

Edited by CaptainBoing 2019-06-27
 
KeepIS

Guru

Joined: 13/10/2014
Location: Australia
Posts: 1945
Posted: 06:51am 26 Jun 2019
Copy link to clipboard 
Print this post

The User USB port on the new board is a Micro USB Type-C

This explains the extra power link on JP2 for CHGR.




NANO Inverter: Full download - Only Hex Ver 8.1Ks
 
KeepIS

Guru

Joined: 13/10/2014
Location: Australia
Posts: 1945
Posted: 09:18am 26 Jun 2019
Copy link to clipboard 
Print this post

Well looks like I got that wrong in a sense, as at first glance (being oval) it looked like a new hard to find mini USB-C.

The manual says "USB Micro-AB receptacle connector CN13"

The housing is different to the Micro-B connector for STLINK, this housing on TWO units looks completely oval, the connection Pins contacts appear to be upside down to the normal Micro-B port and the contact centering looks different.

Has anyone else had a chance to look at this yet?
NANO Inverter: Full download - Only Hex Ver 8.1Ks
 
Tinine
Guru

Joined: 30/03/2016
Location: United Kingdom
Posts: 1646
Posted: 10:47am 26 Jun 2019
Copy link to clipboard 
Print this post

I much prefer the USB-C because they are more robust and can plug-in, in any orientation....I never get the other plugs the right-way up

There are adapters available, BTW.
 
     Page 1 of 2    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025