PHP Fatal error: Uncaught Error: Call to a member function prepare() on null

Ayuda estoy en el proceso de creaci贸n de un blog y al tratar de acceder al index me sale en pantalla que hubo un error con la funci贸n prepare() on null, no entiendo porque porfa ayuda 馃檨 abajo cree la conexi贸n

    function conexion($  bd_config){         try {         $  conexion = new PDO('mysql:host=localhost;dbname='.$  bd_config['basedatos'], $  bd_config['usuario'], $  bd_config['pass']);         $  conexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);          return $  conexion;          } catch (PDOException $  e) {     return false;     }     } 

Aqu铆 defin铆 los datos de la Base de datos

<?php  define('RUTA', 'http://localhost/curso/Practicas/PracticaBlog/');  $  bd_config = array(     'basedatos' => 'blog',     'usuario' => 'root',     'pass' => '' );  $  blog_config = array(     'post_por_pagina'=> '2',     'carpeta_imagenes' => 'imagenes/' );  $  blog_admin = array(     'usuario' => 'Nicolas',     'password' => '456' );  ?> 

aqu铆 abajo llamo la conexi贸n

<?php   require 'admin/config.php';   require 'functions.php';   if (!$  conexion) {     header('Location: Error.php'); }  $  posts = obtener_post($  blog_config['post_por_pagina'],$  conexion);  if (!$  posts) {     header('Location: Error.php'); }  require 'views/index.view.php';   ?> 

Si hacen falta mas detalles comentenlo y los pondr茅, gracias buen dia :,D