Update
After spending time browsing through Atmega328P and BME280 datasheets plus any coding examples I could find for BME280 in any programming language.
I've come to the following conclusions.
For a temp/humidity sensor BME280 is a very complicated beast. I'm not sure which is the hardest to understand, the German-English translation of the BME280 DS or the Techno-English of the Atmega328P. The only complete source code examples I can find are in Python or "C".
I've also realised that because of a limitation in its math capability, Osonsoft cannot do some of the calculations.
I "fixed" the Atmega problem by setting up Oshonsoft to the lcd and the BME by SPI. Both of which I've used sucessfully.
So at the moment I have an ATmega Dev board connected to an HD47780 and a DIY bidirectional 5v to 3.3v level changer which has a BME280 breakout board nestling in the centre. Apart from checking that 5v does convert to 3.3v and visa versa the hardware may or may not work OK. I just get a return of FF i.e. signal permanetly high so most likely nothing.
All things taken into consideration I'd say my chances of getting this working are akin to a snowball's chance in hell!
With some reluctance I've decided I need to learn "C", but that's not going to help with all the other stuff. If I can't understand how the BME280 works it matters not if I can program in "A", "B" or "C". A cunning plan (I hope) as emerged.
There's lots of support for BME280 on the Arduino, the down side is that most of the support comes as a library. Arduino is sort of like "C" and can be programmed with the later.
I've ordered an Arduino! The rational is as follows:
Hopefully I can get the software working fairly easily with half a dozen or so #includes. I can use this to see if the hardware is OK.
Once everything is working, I can reverse engineer the arduino into "C". I learn much better working on a real example with known inputs and outputs.
Some examples I've seen (maybe many examples is better) are so abstract or clever that I can't understand what it's trying to do let alone understand the example.
I'm afraid Oshonsoft is guilty of this frequently.
I've already figured out how to flash an LED (sorry officer I won't do it again), using my own code with Arduino, next I'll try doing the same in "C".
I found AVR Studio 7 so complicated and enormous that I've uninstalled it and gone with WinAVR. It's very basic but as a result IMO is much easier to work with too.
So the Arduino should be here today, just can't wait to get that LED flashing.