Port of TI's CC3100 Websock camera demo. Using FreeRTOS, mbedTLS, also parts of Arducam for cams ov5642 and 0v2640. Can also use MT9D111. Work in progress. Be warned some parts maybe a bit flacky. This is for Seeed Arch max only, for an M3, see the demo for CM3 using the 0v5642 aducam mini.
Diff: main.cpp
- Revision:
- 3:7643714ec664
- Parent:
- 2:b92db44a29b4
- Child:
- 4:c27adffcfec2
--- a/main.cpp Fri Jun 26 16:49:04 2015 +0000 +++ b/main.cpp Fri Jun 26 22:53:54 2015 +0000 @@ -97,7 +97,8 @@ RCC_OscInitTypeDef RCC_OscInitStruct; RCC_ClkInitTypeDef RCC_ClkInitStruct; - +// RCC_PeriphCLKInitTypeDef PeriphClkInitStruct;//Used for ov7670 test + __PWR_CLK_ENABLE(); __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); @@ -120,15 +121,25 @@ RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5); + //Used for ov7670 test +// PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_PLLI2S; +// PeriphClkInitStruct.PLLI2S.PLLI2SN = 192; +// PeriphClkInitStruct.PLLI2S.PLLI2SR = 2; +// HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct); + /* RCC_MCODIV_5 33.6MHz mco output on pin PC_9 (cam xclk) */ /* RCC_MCODIV_4 42MHz mco output on pin PC_9 (cam xclk) */ /* RCC_MCODIV_3 56MHz mco output on pin PC_9 (cam xclk) */ HAL_RCC_MCOConfig(RCC_MCO2, RCC_MCO2SOURCE_SYSCLK, RCC_MCODIV_5); + //Used for ov7670 test + /* RCC_MCODIV_4 24MHz mco output on pin PC_9 (cam xclk) */ +// HAL_RCC_MCOConfig(RCC_MCO2, RCC_MCO2SOURCE_PLLI2SCLK, RCC_MCODIV_4); HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/1000); - - - + + //Used for ov7670 test +// HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK); + } void MX_DCMI_Init() @@ -136,7 +147,7 @@ hdcmi.Instance = DCMI; hdcmi.Init.SynchroMode = DCMI_SYNCHRO_HARDWARE; - hdcmi.Init.PCKPolarity = DCMI_PCKPOLARITY_FALLING; + hdcmi.Init.PCKPolarity = DCMI_PCKPOLARITY_RISING;//FALLING hdcmi.Init.VSPolarity = DCMI_VSPOLARITY_LOW; hdcmi.Init.HSPolarity = DCMI_HSPOLARITY_LOW; hdcmi.Init.CaptureRate = DCMI_CR_ALL_FRAME; @@ -160,7 +171,7 @@ /* DMA interrupt init */ HAL_NVIC_SetPriority(DMA2_Stream1_IRQn, 0, 0); - HAL_NVIC_EnableIRQ(DMA2_Stream1_IRQn); +// HAL_NVIC_EnableIRQ(DMA2_Stream1_IRQn); } @@ -239,7 +250,9 @@ int main(void) { int rv = 0; + SystemClock_Config(); + // // Configuring UART //